KILLED proof of input_jlLIRtVQ9E.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) CpxTrsToCdtProof [UPPER BOUND(ID), 0 ms] (6) CdtProblem (7) CdtToCpxRelTrsProof [BOTH BOUNDS(ID, ID), 0 ms] (8) CpxRelTRS (9) RenamingProof [BOTH BOUNDS(ID, ID), 0 ms] (10) CpxRelTRS (11) TypeInferenceProof [BOTH BOUNDS(ID, ID), 0 ms] (12) typed CpxTrs (13) OrderProof [LOWER BOUND(ID), 0 ms] (14) typed CpxTrs (15) RewriteLemmaProof [LOWER BOUND(ID), 7698 ms] (16) typed CpxTrs (17) RewriteLemmaProof [LOWER BOUND(ID), 1862 ms] (18) BEST (19) proven lower bound (20) LowerBoundPropagationProof [FINISHED, 0 ms] (21) BOUNDS(n^1, INF) (22) typed CpxTrs (23) RelTrsToWeightedTrsProof [UPPER BOUND(ID), 0 ms] (24) CpxWeightedTrs (25) TypeInferenceProof [BOTH BOUNDS(ID, ID), 0 ms] (26) CpxTypedWeightedTrs (27) CompletionProof [UPPER BOUND(ID), 0 ms] (28) CpxTypedWeightedCompleteTrs (29) NarrowingProof [BOTH BOUNDS(ID, ID), 20 ms] (30) CpxTypedWeightedCompleteTrs (31) CpxTypedWeightedTrsToRntsProof [UPPER BOUND(ID), 0 ms] (32) CpxRNTS (33) SimplificationProof [BOTH BOUNDS(ID, ID), 0 ms] (34) CpxRNTS (35) CompletionProof [UPPER BOUND(ID), 0 ms] (36) CpxTypedWeightedCompleteTrs (37) CpxTypedWeightedTrsToRntsProof [UPPER BOUND(ID), 0 ms] (38) CpxRNTS (39) CpxTrsToCdtProof [UPPER BOUND(ID), 0 ms] (40) CdtProblem (41) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (42) CdtProblem (43) CdtToCpxRelTrsProof [BOTH BOUNDS(ID, ID), 0 ms] (44) CpxRelTRS (45) RelTrsToTrsProof [UPPER BOUND(ID), 0 ms] (46) CpxTRS (47) RelTrsToWeightedTrsProof [BOTH BOUNDS(ID, ID), 0 ms] (48) CpxWeightedTrs (49) TypeInferenceProof [BOTH BOUNDS(ID, ID), 0 ms] (50) CpxTypedWeightedTrs (51) CompletionProof [UPPER BOUND(ID), 0 ms] (52) CpxTypedWeightedCompleteTrs (53) NarrowingProof [BOTH BOUNDS(ID, ID), 258 ms] (54) CpxTypedWeightedCompleteTrs (55) CpxTypedWeightedTrsToRntsProof [UPPER BOUND(ID), 0 ms] (56) CpxRNTS (57) SimplificationProof [BOTH BOUNDS(ID, ID), 0 ms] (58) CpxRNTS (59) CompletionProof [UPPER BOUND(ID), 0 ms] (60) CpxTypedWeightedCompleteTrs (61) CpxTypedWeightedTrsToRntsProof [UPPER BOUND(ID), 0 ms] (62) CpxRNTS (63) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (64) CdtProblem (65) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (66) CdtProblem (67) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (68) CdtProblem (69) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (70) CdtProblem (71) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (72) CdtProblem (73) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (74) CdtProblem (75) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (76) CdtProblem (77) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (78) CdtProblem (79) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (80) CdtProblem (81) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (82) CdtProblem (83) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (84) CdtProblem (85) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (86) CdtProblem (87) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 19 ms] (88) CdtProblem (89) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (90) CdtProblem (91) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (92) CdtProblem (93) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 1 ms] (94) CdtProblem (95) CdtLeafRemovalProof [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), 0 ms] (104) CdtProblem (105) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 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), 68 ms] (112) CdtProblem (113) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (114) CdtProblem (115) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (116) CdtProblem (117) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 23 ms] (118) CdtProblem (119) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (120) CdtProblem (121) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (122) CdtProblem (123) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 1 ms] (124) CdtProblem (125) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (126) CdtProblem (127) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 32 ms] (128) CdtProblem (129) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 13 ms] (130) CdtProblem (131) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 109 ms] (132) CdtProblem (133) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (134) CdtProblem (135) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 6 ms] (136) CdtProblem (137) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 1 ms] (138) CdtProblem (139) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 37 ms] (140) CdtProblem (141) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (142) CdtProblem (143) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 83 ms] (144) CdtProblem (145) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (146) CdtProblem (147) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 96 ms] (148) CdtProblem (149) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 8 ms] (150) CdtProblem (151) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 177 ms] (152) CdtProblem (153) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (154) CdtProblem (155) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 132 ms] (156) CdtProblem (157) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (158) CdtProblem (159) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 99 ms] (160) CdtProblem (161) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (162) CdtProblem (163) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (164) CdtProblem (165) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 172 ms] (166) CdtProblem (167) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (168) CdtProblem (169) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (170) CdtProblem (171) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 195 ms] (172) CdtProblem (173) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (174) CdtProblem (175) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (176) CdtProblem (177) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 81 ms] (178) CdtProblem (179) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 8 ms] (180) CdtProblem (181) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (182) CdtProblem (183) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 42 ms] (184) CdtProblem (185) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 32 ms] (186) CdtProblem (187) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 24 ms] (188) CdtProblem (189) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 81 ms] (190) CdtProblem (191) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (192) CdtProblem (193) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (194) CdtProblem (195) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 68 ms] (196) CdtProblem (197) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 37 ms] (198) CdtProblem (199) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 20 ms] (200) CdtProblem (201) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 80 ms] (202) CdtProblem (203) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 36 ms] (204) CdtProblem (205) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 48 ms] (206) CdtProblem (207) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 30 ms] (208) CdtProblem (209) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 2 ms] (210) CdtProblem (211) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (212) CdtProblem (213) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 52 ms] (214) CdtProblem (215) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 5 ms] (216) CdtProblem (217) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 139 ms] (218) CdtProblem (219) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 15 ms] (220) CdtProblem (221) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 121 ms] (222) CdtProblem (223) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 55 ms] (224) CdtProblem (225) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 73 ms] (226) CdtProblem (227) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (228) CdtProblem (229) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 124 ms] (230) CdtProblem (231) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 16 ms] (232) CdtProblem (233) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 191 ms] (234) CdtProblem (235) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 2 ms] (236) CdtProblem (237) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 183 ms] (238) CdtProblem (239) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 36 ms] (240) CdtProblem (241) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 83 ms] (242) CdtProblem (243) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 35 ms] (244) CdtProblem (245) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 189 ms] (246) CdtProblem (247) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 95 ms] (248) CdtProblem (249) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 99 ms] (250) CdtProblem (251) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 223 ms] (252) CdtProblem (253) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 72 ms] (254) CdtProblem (255) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 54 ms] (256) CdtProblem (257) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 235 ms] (258) CdtProblem (259) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 104 ms] (260) CdtProblem (261) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 54 ms] (262) CdtProblem (263) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 159 ms] (264) CdtProblem (265) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 52 ms] (266) CdtProblem (267) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 48 ms] (268) CdtProblem (269) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 301 ms] (270) CdtProblem (271) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 66 ms] (272) CdtProblem (273) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 79 ms] (274) CdtProblem (275) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 351 ms] (276) CdtProblem (277) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 107 ms] (278) CdtProblem (279) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 33 ms] (280) CdtProblem (281) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 536 ms] (282) CdtProblem (283) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 136 ms] (284) CdtProblem (285) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 84 ms] (286) 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__first(0, Z) -> nil a__first(s(X), cons(Y, Z)) -> cons(mark(Y), first(X, Z)) a__sel(0, cons(X, Z)) -> mark(X) a__sel(s(X), cons(Y, Z)) -> a__sel(mark(X), mark(Z)) mark(from(X)) -> a__from(mark(X)) mark(first(X1, X2)) -> a__first(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__first(X1, X2) -> first(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__first(0', Z) -> nil a__first(s(X), cons(Y, Z)) -> cons(mark(Y), first(X, Z)) a__sel(0', cons(X, Z)) -> mark(X) a__sel(s(X), cons(Y, Z)) -> a__sel(mark(X), mark(Z)) mark(from(X)) -> a__from(mark(X)) mark(first(X1, X2)) -> a__first(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__first(X1, X2) -> first(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__first(0, Z) -> nil a__first(s(X), cons(Y, Z)) -> cons(mark(Y), first(X, Z)) a__sel(0, cons(X, Z)) -> mark(X) a__sel(s(X), cons(Y, Z)) -> a__sel(mark(X), mark(Z)) mark(from(X)) -> a__from(mark(X)) mark(first(X1, X2)) -> a__first(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__first(X1, X2) -> first(X1, X2) a__sel(X1, X2) -> sel(X1, X2) S is empty. Rewrite Strategy: PARALLEL_INNERMOST ---------------------------------------- (5) CpxTrsToCdtProof (UPPER BOUND(ID)) Converted Cpx (relative) TRS with rewrite strategy PARALLEL_INNERMOST to CDT ---------------------------------------- (6) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(0, z0) -> c2 A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__FIRST(z0, z1) -> c4 A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c6(A__SEL(mark(z0), mark(z2)), MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c7(A__SEL(mark(z0), mark(z2)), MARK(z2)) A__SEL(z0, z1) -> c8 MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(first(z0, z1)) -> c10(A__FIRST(mark(z0), mark(z1)), MARK(z0)) MARK(first(z0, z1)) -> c11(A__FIRST(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c12(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) MARK(0) -> c16 MARK(nil) -> c17 S tuples: A__FROM(z0) -> c(MARK(z0)) A__FROM(z0) -> c1 A__FIRST(0, z0) -> c2 A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__FIRST(z0, z1) -> c4 A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c6(A__SEL(mark(z0), mark(z2)), MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c7(A__SEL(mark(z0), mark(z2)), MARK(z2)) A__SEL(z0, z1) -> c8 MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(first(z0, z1)) -> c10(A__FIRST(mark(z0), mark(z1)), MARK(z0)) MARK(first(z0, z1)) -> c11(A__FIRST(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c12(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) MARK(0) -> c16 MARK(nil) -> c17 K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c1, c2, c3_1, c4, c5_1, c6_2, c7_2, c8, c9_2, c10_2, c11_2, c12_2, c13_2, c14_1, c15_1, c16, c17 ---------------------------------------- (7) CdtToCpxRelTrsProof (BOTH BOUNDS(ID, ID)) Converted S to standard rules, and D \ S as well as R to relative rules. ---------------------------------------- (8) Obligation: The Runtime Complexity (innermost) of the given CpxRelTRS could be proven to be BOUNDS(n^1, INF). The TRS R consists of the following rules: A__FROM(z0) -> c(MARK(z0)) A__FROM(z0) -> c1 A__FIRST(0, z0) -> c2 A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__FIRST(z0, z1) -> c4 A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c6(A__SEL(mark(z0), mark(z2)), MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c7(A__SEL(mark(z0), mark(z2)), MARK(z2)) A__SEL(z0, z1) -> c8 MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(first(z0, z1)) -> c10(A__FIRST(mark(z0), mark(z1)), MARK(z0)) MARK(first(z0, z1)) -> c11(A__FIRST(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c12(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) MARK(0) -> c16 MARK(nil) -> c17 The (relative) TRS S consists of the following rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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 Rewrite Strategy: INNERMOST ---------------------------------------- (9) RenamingProof (BOTH BOUNDS(ID, ID)) Renamed function symbols to avoid clashes with predefined symbol. ---------------------------------------- (10) Obligation: The Runtime Complexity (innermost) of the given CpxRelTRS could be proven to be BOUNDS(n^1, INF). The TRS R consists of the following rules: A__FROM(z0) -> c(MARK(z0)) A__FROM(z0) -> c1 A__FIRST(0', z0) -> c2 A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__FIRST(z0, z1) -> c4 A__SEL(0', cons(z0, z1)) -> c5(MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c6(A__SEL(mark(z0), mark(z2)), MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c7(A__SEL(mark(z0), mark(z2)), MARK(z2)) A__SEL(z0, z1) -> c8 MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(first(z0, z1)) -> c10(A__FIRST(mark(z0), mark(z1)), MARK(z0)) MARK(first(z0, z1)) -> c11(A__FIRST(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c12(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) MARK(0') -> c16 MARK(nil) -> c17 The (relative) TRS S consists of the following rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0', z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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 Rewrite Strategy: INNERMOST ---------------------------------------- (11) TypeInferenceProof (BOTH BOUNDS(ID, ID)) Inferred types. ---------------------------------------- (12) Obligation: Innermost TRS: Rules: A__FROM(z0) -> c(MARK(z0)) A__FROM(z0) -> c1 A__FIRST(0', z0) -> c2 A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__FIRST(z0, z1) -> c4 A__SEL(0', cons(z0, z1)) -> c5(MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c6(A__SEL(mark(z0), mark(z2)), MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c7(A__SEL(mark(z0), mark(z2)), MARK(z2)) A__SEL(z0, z1) -> c8 MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(first(z0, z1)) -> c10(A__FIRST(mark(z0), mark(z1)), MARK(z0)) MARK(first(z0, z1)) -> c11(A__FIRST(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c12(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) MARK(0') -> c16 MARK(nil) -> c17 a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0', z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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 Types: A__FROM :: 0':s:cons:from:first:sel:nil -> c:c1 c :: c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c:c1 MARK :: 0':s:cons:from:first:sel:nil -> c9:c10:c11:c12:c13:c14:c15:c16:c17 c1 :: c:c1 A__FIRST :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil -> c2:c3:c4 0' :: 0':s:cons:from:first:sel:nil c2 :: c2:c3:c4 s :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil cons :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil c3 :: c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c2:c3:c4 c4 :: c2:c3:c4 A__SEL :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil -> c5:c6:c7:c8 c5 :: c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c5:c6:c7:c8 c6 :: c5:c6:c7:c8 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c5:c6:c7:c8 mark :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil c7 :: c5:c6:c7:c8 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c5:c6:c7:c8 c8 :: c5:c6:c7:c8 from :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil c9 :: c:c1 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 first :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil c10 :: c2:c3:c4 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 c11 :: c2:c3:c4 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 sel :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil c12 :: c5:c6:c7:c8 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 c13 :: c5:c6:c7:c8 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 c14 :: c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 c15 :: c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 c16 :: c9:c10:c11:c12:c13:c14:c15:c16:c17 nil :: 0':s:cons:from:first:sel:nil c17 :: c9:c10:c11:c12:c13:c14:c15:c16:c17 a__from :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil a__first :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil a__sel :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil hole_c:c11_18 :: c:c1 hole_0':s:cons:from:first:sel:nil2_18 :: 0':s:cons:from:first:sel:nil hole_c9:c10:c11:c12:c13:c14:c15:c16:c173_18 :: c9:c10:c11:c12:c13:c14:c15:c16:c17 hole_c2:c3:c44_18 :: c2:c3:c4 hole_c5:c6:c7:c85_18 :: c5:c6:c7:c8 gen_0':s:cons:from:first:sel:nil6_18 :: Nat -> 0':s:cons:from:first:sel:nil gen_c9:c10:c11:c12:c13:c14:c15:c16:c177_18 :: Nat -> c9:c10:c11:c12:c13:c14:c15:c16:c17 gen_c5:c6:c7:c88_18 :: Nat -> c5:c6:c7:c8 ---------------------------------------- (13) OrderProof (LOWER BOUND(ID)) Heuristically decided to analyse the following defined symbols: A__FROM, MARK, A__SEL, mark, a__from, a__sel They will be analysed ascendingly in the following order: A__FROM = MARK A__FROM = A__SEL MARK = A__SEL mark < MARK mark < A__SEL mark = a__from mark = a__sel a__from = a__sel ---------------------------------------- (14) Obligation: Innermost TRS: Rules: A__FROM(z0) -> c(MARK(z0)) A__FROM(z0) -> c1 A__FIRST(0', z0) -> c2 A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__FIRST(z0, z1) -> c4 A__SEL(0', cons(z0, z1)) -> c5(MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c6(A__SEL(mark(z0), mark(z2)), MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c7(A__SEL(mark(z0), mark(z2)), MARK(z2)) A__SEL(z0, z1) -> c8 MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(first(z0, z1)) -> c10(A__FIRST(mark(z0), mark(z1)), MARK(z0)) MARK(first(z0, z1)) -> c11(A__FIRST(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c12(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) MARK(0') -> c16 MARK(nil) -> c17 a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0', z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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 Types: A__FROM :: 0':s:cons:from:first:sel:nil -> c:c1 c :: c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c:c1 MARK :: 0':s:cons:from:first:sel:nil -> c9:c10:c11:c12:c13:c14:c15:c16:c17 c1 :: c:c1 A__FIRST :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil -> c2:c3:c4 0' :: 0':s:cons:from:first:sel:nil c2 :: c2:c3:c4 s :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil cons :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil c3 :: c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c2:c3:c4 c4 :: c2:c3:c4 A__SEL :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil -> c5:c6:c7:c8 c5 :: c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c5:c6:c7:c8 c6 :: c5:c6:c7:c8 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c5:c6:c7:c8 mark :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil c7 :: c5:c6:c7:c8 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c5:c6:c7:c8 c8 :: c5:c6:c7:c8 from :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil c9 :: c:c1 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 first :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil c10 :: c2:c3:c4 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 c11 :: c2:c3:c4 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 sel :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil c12 :: c5:c6:c7:c8 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 c13 :: c5:c6:c7:c8 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 c14 :: c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 c15 :: c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 c16 :: c9:c10:c11:c12:c13:c14:c15:c16:c17 nil :: 0':s:cons:from:first:sel:nil c17 :: c9:c10:c11:c12:c13:c14:c15:c16:c17 a__from :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil a__first :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil a__sel :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil hole_c:c11_18 :: c:c1 hole_0':s:cons:from:first:sel:nil2_18 :: 0':s:cons:from:first:sel:nil hole_c9:c10:c11:c12:c13:c14:c15:c16:c173_18 :: c9:c10:c11:c12:c13:c14:c15:c16:c17 hole_c2:c3:c44_18 :: c2:c3:c4 hole_c5:c6:c7:c85_18 :: c5:c6:c7:c8 gen_0':s:cons:from:first:sel:nil6_18 :: Nat -> 0':s:cons:from:first:sel:nil gen_c9:c10:c11:c12:c13:c14:c15:c16:c177_18 :: Nat -> c9:c10:c11:c12:c13:c14:c15:c16:c17 gen_c5:c6:c7:c88_18 :: Nat -> c5:c6:c7:c8 Generator Equations: gen_0':s:cons:from:first:sel:nil6_18(0) <=> 0' gen_0':s:cons:from:first:sel:nil6_18(+(x, 1)) <=> s(gen_0':s:cons:from:first:sel:nil6_18(x)) gen_c9:c10:c11:c12:c13:c14:c15:c16:c177_18(0) <=> c16 gen_c9:c10:c11:c12:c13:c14:c15:c16:c177_18(+(x, 1)) <=> c9(c(c16), gen_c9:c10:c11:c12:c13:c14:c15:c16:c177_18(x)) gen_c5:c6:c7:c88_18(0) <=> c5(c16) gen_c5:c6:c7:c88_18(+(x, 1)) <=> c6(gen_c5:c6:c7:c88_18(x), c16) The following defined symbols remain to be analysed: a__from, A__FROM, MARK, A__SEL, mark, a__sel They will be analysed ascendingly in the following order: A__FROM = MARK A__FROM = A__SEL MARK = A__SEL mark < MARK mark < A__SEL mark = a__from mark = a__sel a__from = a__sel ---------------------------------------- (15) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: mark(gen_0':s:cons:from:first:sel:nil6_18(n6855_18)) -> gen_0':s:cons:from:first:sel:nil6_18(n6855_18), rt in Omega(0) Induction Base: mark(gen_0':s:cons:from:first:sel:nil6_18(0)) ->_R^Omega(0) 0' Induction Step: mark(gen_0':s:cons:from:first:sel:nil6_18(+(n6855_18, 1))) ->_R^Omega(0) s(mark(gen_0':s:cons:from:first:sel:nil6_18(n6855_18))) ->_IH s(gen_0':s:cons:from:first:sel:nil6_18(c6856_18)) We have rt in Omega(1) and sz in O(n). Thus, we have irc_R in Omega(n^0). ---------------------------------------- (16) Obligation: Innermost TRS: Rules: A__FROM(z0) -> c(MARK(z0)) A__FROM(z0) -> c1 A__FIRST(0', z0) -> c2 A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__FIRST(z0, z1) -> c4 A__SEL(0', cons(z0, z1)) -> c5(MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c6(A__SEL(mark(z0), mark(z2)), MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c7(A__SEL(mark(z0), mark(z2)), MARK(z2)) A__SEL(z0, z1) -> c8 MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(first(z0, z1)) -> c10(A__FIRST(mark(z0), mark(z1)), MARK(z0)) MARK(first(z0, z1)) -> c11(A__FIRST(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c12(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) MARK(0') -> c16 MARK(nil) -> c17 a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0', z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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 Types: A__FROM :: 0':s:cons:from:first:sel:nil -> c:c1 c :: c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c:c1 MARK :: 0':s:cons:from:first:sel:nil -> c9:c10:c11:c12:c13:c14:c15:c16:c17 c1 :: c:c1 A__FIRST :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil -> c2:c3:c4 0' :: 0':s:cons:from:first:sel:nil c2 :: c2:c3:c4 s :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil cons :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil c3 :: c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c2:c3:c4 c4 :: c2:c3:c4 A__SEL :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil -> c5:c6:c7:c8 c5 :: c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c5:c6:c7:c8 c6 :: c5:c6:c7:c8 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c5:c6:c7:c8 mark :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil c7 :: c5:c6:c7:c8 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c5:c6:c7:c8 c8 :: c5:c6:c7:c8 from :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil c9 :: c:c1 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 first :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil c10 :: c2:c3:c4 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 c11 :: c2:c3:c4 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 sel :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil c12 :: c5:c6:c7:c8 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 c13 :: c5:c6:c7:c8 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 c14 :: c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 c15 :: c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 c16 :: c9:c10:c11:c12:c13:c14:c15:c16:c17 nil :: 0':s:cons:from:first:sel:nil c17 :: c9:c10:c11:c12:c13:c14:c15:c16:c17 a__from :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil a__first :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil a__sel :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil hole_c:c11_18 :: c:c1 hole_0':s:cons:from:first:sel:nil2_18 :: 0':s:cons:from:first:sel:nil hole_c9:c10:c11:c12:c13:c14:c15:c16:c173_18 :: c9:c10:c11:c12:c13:c14:c15:c16:c17 hole_c2:c3:c44_18 :: c2:c3:c4 hole_c5:c6:c7:c85_18 :: c5:c6:c7:c8 gen_0':s:cons:from:first:sel:nil6_18 :: Nat -> 0':s:cons:from:first:sel:nil gen_c9:c10:c11:c12:c13:c14:c15:c16:c177_18 :: Nat -> c9:c10:c11:c12:c13:c14:c15:c16:c17 gen_c5:c6:c7:c88_18 :: Nat -> c5:c6:c7:c8 Lemmas: mark(gen_0':s:cons:from:first:sel:nil6_18(n6855_18)) -> gen_0':s:cons:from:first:sel:nil6_18(n6855_18), rt in Omega(0) Generator Equations: gen_0':s:cons:from:first:sel:nil6_18(0) <=> 0' gen_0':s:cons:from:first:sel:nil6_18(+(x, 1)) <=> s(gen_0':s:cons:from:first:sel:nil6_18(x)) gen_c9:c10:c11:c12:c13:c14:c15:c16:c177_18(0) <=> c16 gen_c9:c10:c11:c12:c13:c14:c15:c16:c177_18(+(x, 1)) <=> c9(c(c16), gen_c9:c10:c11:c12:c13:c14:c15:c16:c177_18(x)) gen_c5:c6:c7:c88_18(0) <=> c5(c16) gen_c5:c6:c7:c88_18(+(x, 1)) <=> c6(gen_c5:c6:c7:c88_18(x), c16) The following defined symbols remain to be analysed: a__sel, A__FROM, MARK, A__SEL, a__from They will be analysed ascendingly in the following order: A__FROM = MARK A__FROM = A__SEL MARK = A__SEL mark < MARK mark < A__SEL mark = a__from mark = a__sel a__from = a__sel ---------------------------------------- (17) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: MARK(gen_0':s:cons:from:first:sel:nil6_18(+(1, n8130_18))) -> *9_18, rt in Omega(n8130_18) Induction Base: MARK(gen_0':s:cons:from:first:sel:nil6_18(+(1, 0))) Induction Step: MARK(gen_0':s:cons:from:first:sel:nil6_18(+(1, +(n8130_18, 1)))) ->_R^Omega(1) c15(MARK(gen_0':s:cons:from:first:sel:nil6_18(+(1, n8130_18)))) ->_IH c15(*9_18) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (18) Complex Obligation (BEST) ---------------------------------------- (19) Obligation: Proved the lower bound n^1 for the following obligation: Innermost TRS: Rules: A__FROM(z0) -> c(MARK(z0)) A__FROM(z0) -> c1 A__FIRST(0', z0) -> c2 A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__FIRST(z0, z1) -> c4 A__SEL(0', cons(z0, z1)) -> c5(MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c6(A__SEL(mark(z0), mark(z2)), MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c7(A__SEL(mark(z0), mark(z2)), MARK(z2)) A__SEL(z0, z1) -> c8 MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(first(z0, z1)) -> c10(A__FIRST(mark(z0), mark(z1)), MARK(z0)) MARK(first(z0, z1)) -> c11(A__FIRST(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c12(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) MARK(0') -> c16 MARK(nil) -> c17 a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0', z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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 Types: A__FROM :: 0':s:cons:from:first:sel:nil -> c:c1 c :: c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c:c1 MARK :: 0':s:cons:from:first:sel:nil -> c9:c10:c11:c12:c13:c14:c15:c16:c17 c1 :: c:c1 A__FIRST :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil -> c2:c3:c4 0' :: 0':s:cons:from:first:sel:nil c2 :: c2:c3:c4 s :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil cons :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil c3 :: c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c2:c3:c4 c4 :: c2:c3:c4 A__SEL :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil -> c5:c6:c7:c8 c5 :: c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c5:c6:c7:c8 c6 :: c5:c6:c7:c8 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c5:c6:c7:c8 mark :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil c7 :: c5:c6:c7:c8 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c5:c6:c7:c8 c8 :: c5:c6:c7:c8 from :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil c9 :: c:c1 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 first :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil c10 :: c2:c3:c4 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 c11 :: c2:c3:c4 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 sel :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil c12 :: c5:c6:c7:c8 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 c13 :: c5:c6:c7:c8 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 c14 :: c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 c15 :: c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 c16 :: c9:c10:c11:c12:c13:c14:c15:c16:c17 nil :: 0':s:cons:from:first:sel:nil c17 :: c9:c10:c11:c12:c13:c14:c15:c16:c17 a__from :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil a__first :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil a__sel :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil hole_c:c11_18 :: c:c1 hole_0':s:cons:from:first:sel:nil2_18 :: 0':s:cons:from:first:sel:nil hole_c9:c10:c11:c12:c13:c14:c15:c16:c173_18 :: c9:c10:c11:c12:c13:c14:c15:c16:c17 hole_c2:c3:c44_18 :: c2:c3:c4 hole_c5:c6:c7:c85_18 :: c5:c6:c7:c8 gen_0':s:cons:from:first:sel:nil6_18 :: Nat -> 0':s:cons:from:first:sel:nil gen_c9:c10:c11:c12:c13:c14:c15:c16:c177_18 :: Nat -> c9:c10:c11:c12:c13:c14:c15:c16:c17 gen_c5:c6:c7:c88_18 :: Nat -> c5:c6:c7:c8 Lemmas: mark(gen_0':s:cons:from:first:sel:nil6_18(n6855_18)) -> gen_0':s:cons:from:first:sel:nil6_18(n6855_18), rt in Omega(0) Generator Equations: gen_0':s:cons:from:first:sel:nil6_18(0) <=> 0' gen_0':s:cons:from:first:sel:nil6_18(+(x, 1)) <=> s(gen_0':s:cons:from:first:sel:nil6_18(x)) gen_c9:c10:c11:c12:c13:c14:c15:c16:c177_18(0) <=> c16 gen_c9:c10:c11:c12:c13:c14:c15:c16:c177_18(+(x, 1)) <=> c9(c(c16), gen_c9:c10:c11:c12:c13:c14:c15:c16:c177_18(x)) gen_c5:c6:c7:c88_18(0) <=> c5(c16) gen_c5:c6:c7:c88_18(+(x, 1)) <=> c6(gen_c5:c6:c7:c88_18(x), c16) The following defined symbols remain to be analysed: MARK, A__FROM, A__SEL They will be analysed ascendingly in the following order: A__FROM = MARK A__FROM = A__SEL MARK = A__SEL ---------------------------------------- (20) LowerBoundPropagationProof (FINISHED) Propagated lower bound. ---------------------------------------- (21) BOUNDS(n^1, INF) ---------------------------------------- (22) Obligation: Innermost TRS: Rules: A__FROM(z0) -> c(MARK(z0)) A__FROM(z0) -> c1 A__FIRST(0', z0) -> c2 A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__FIRST(z0, z1) -> c4 A__SEL(0', cons(z0, z1)) -> c5(MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c6(A__SEL(mark(z0), mark(z2)), MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c7(A__SEL(mark(z0), mark(z2)), MARK(z2)) A__SEL(z0, z1) -> c8 MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(first(z0, z1)) -> c10(A__FIRST(mark(z0), mark(z1)), MARK(z0)) MARK(first(z0, z1)) -> c11(A__FIRST(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c12(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) MARK(0') -> c16 MARK(nil) -> c17 a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0', z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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 Types: A__FROM :: 0':s:cons:from:first:sel:nil -> c:c1 c :: c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c:c1 MARK :: 0':s:cons:from:first:sel:nil -> c9:c10:c11:c12:c13:c14:c15:c16:c17 c1 :: c:c1 A__FIRST :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil -> c2:c3:c4 0' :: 0':s:cons:from:first:sel:nil c2 :: c2:c3:c4 s :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil cons :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil c3 :: c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c2:c3:c4 c4 :: c2:c3:c4 A__SEL :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil -> c5:c6:c7:c8 c5 :: c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c5:c6:c7:c8 c6 :: c5:c6:c7:c8 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c5:c6:c7:c8 mark :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil c7 :: c5:c6:c7:c8 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c5:c6:c7:c8 c8 :: c5:c6:c7:c8 from :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil c9 :: c:c1 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 first :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil c10 :: c2:c3:c4 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 c11 :: c2:c3:c4 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 sel :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil c12 :: c5:c6:c7:c8 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 c13 :: c5:c6:c7:c8 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 c14 :: c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 c15 :: c9:c10:c11:c12:c13:c14:c15:c16:c17 -> c9:c10:c11:c12:c13:c14:c15:c16:c17 c16 :: c9:c10:c11:c12:c13:c14:c15:c16:c17 nil :: 0':s:cons:from:first:sel:nil c17 :: c9:c10:c11:c12:c13:c14:c15:c16:c17 a__from :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil a__first :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil a__sel :: 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil -> 0':s:cons:from:first:sel:nil hole_c:c11_18 :: c:c1 hole_0':s:cons:from:first:sel:nil2_18 :: 0':s:cons:from:first:sel:nil hole_c9:c10:c11:c12:c13:c14:c15:c16:c173_18 :: c9:c10:c11:c12:c13:c14:c15:c16:c17 hole_c2:c3:c44_18 :: c2:c3:c4 hole_c5:c6:c7:c85_18 :: c5:c6:c7:c8 gen_0':s:cons:from:first:sel:nil6_18 :: Nat -> 0':s:cons:from:first:sel:nil gen_c9:c10:c11:c12:c13:c14:c15:c16:c177_18 :: Nat -> c9:c10:c11:c12:c13:c14:c15:c16:c17 gen_c5:c6:c7:c88_18 :: Nat -> c5:c6:c7:c8 Lemmas: mark(gen_0':s:cons:from:first:sel:nil6_18(n6855_18)) -> gen_0':s:cons:from:first:sel:nil6_18(n6855_18), rt in Omega(0) MARK(gen_0':s:cons:from:first:sel:nil6_18(+(1, n8130_18))) -> *9_18, rt in Omega(n8130_18) Generator Equations: gen_0':s:cons:from:first:sel:nil6_18(0) <=> 0' gen_0':s:cons:from:first:sel:nil6_18(+(x, 1)) <=> s(gen_0':s:cons:from:first:sel:nil6_18(x)) gen_c9:c10:c11:c12:c13:c14:c15:c16:c177_18(0) <=> c16 gen_c9:c10:c11:c12:c13:c14:c15:c16:c177_18(+(x, 1)) <=> c9(c(c16), gen_c9:c10:c11:c12:c13:c14:c15:c16:c177_18(x)) gen_c5:c6:c7:c88_18(0) <=> c5(c16) gen_c5:c6:c7:c88_18(+(x, 1)) <=> c6(gen_c5:c6:c7:c88_18(x), c16) The following defined symbols remain to be analysed: A__FROM, A__SEL They will be analysed ascendingly in the following order: A__FROM = MARK A__FROM = A__SEL MARK = A__SEL ---------------------------------------- (23) RelTrsToWeightedTrsProof (UPPER BOUND(ID)) Transformed relative TRS to weighted TRS ---------------------------------------- (24) 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__first(0, Z) -> nil [1] a__first(s(X), cons(Y, Z)) -> cons(mark(Y), first(X, Z)) [1] a__sel(0, cons(X, Z)) -> mark(X) [1] a__sel(s(X), cons(Y, Z)) -> a__sel(mark(X), mark(Z)) [1] mark(from(X)) -> a__from(mark(X)) [1] mark(first(X1, X2)) -> a__first(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__first(X1, X2) -> first(X1, X2) [1] a__sel(X1, X2) -> sel(X1, X2) [1] Rewrite Strategy: INNERMOST ---------------------------------------- (25) TypeInferenceProof (BOTH BOUNDS(ID, ID)) Infered types. ---------------------------------------- (26) 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__first(0, Z) -> nil [1] a__first(s(X), cons(Y, Z)) -> cons(mark(Y), first(X, Z)) [1] a__sel(0, cons(X, Z)) -> mark(X) [1] a__sel(s(X), cons(Y, Z)) -> a__sel(mark(X), mark(Z)) [1] mark(from(X)) -> a__from(mark(X)) [1] mark(first(X1, X2)) -> a__first(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__first(X1, X2) -> first(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:first:sel -> s:from:cons:0:nil:first:sel cons :: s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel mark :: s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel from :: s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel s :: s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel a__first :: s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel 0 :: s:from:cons:0:nil:first:sel nil :: s:from:cons:0:nil:first:sel first :: s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel a__sel :: s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel sel :: s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel Rewrite Strategy: INNERMOST ---------------------------------------- (27) 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__sel_2 a__from_1 a__first_2 Due to the following rules being added: none And the following fresh constants: none ---------------------------------------- (28) 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__first(0, Z) -> nil [1] a__first(s(X), cons(Y, Z)) -> cons(mark(Y), first(X, Z)) [1] a__sel(0, cons(X, Z)) -> mark(X) [1] a__sel(s(X), cons(Y, Z)) -> a__sel(mark(X), mark(Z)) [1] mark(from(X)) -> a__from(mark(X)) [1] mark(first(X1, X2)) -> a__first(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__first(X1, X2) -> first(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:first:sel -> s:from:cons:0:nil:first:sel cons :: s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel mark :: s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel from :: s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel s :: s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel a__first :: s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel 0 :: s:from:cons:0:nil:first:sel nil :: s:from:cons:0:nil:first:sel first :: s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel a__sel :: s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel sel :: s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel Rewrite Strategy: INNERMOST ---------------------------------------- (29) NarrowingProof (BOTH BOUNDS(ID, ID)) Narrowed the inner basic terms of all right-hand sides by a single narrowing step. ---------------------------------------- (30) 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__first(0, Z) -> nil [1] a__first(s(X), cons(Y, Z)) -> cons(mark(Y), first(X, Z)) [1] a__sel(0, cons(X, Z)) -> mark(X) [1] a__sel(s(X), cons(Y, Z)) -> a__sel(mark(X), mark(Z)) [1] mark(from(from(X35))) -> a__from(a__from(mark(X35))) [2] mark(from(first(X123, X223))) -> a__from(a__first(mark(X123), mark(X223))) [2] mark(from(sel(X124, X224))) -> a__from(a__sel(mark(X124), mark(X224))) [2] mark(from(cons(X125, X225))) -> a__from(cons(mark(X125), X225)) [2] mark(from(s(X36))) -> a__from(s(mark(X36))) [2] mark(from(0)) -> a__from(0) [2] mark(from(nil)) -> a__from(nil) [2] mark(first(X1, X2)) -> a__first(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__first(X1, X2) -> first(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:first:sel -> s:from:cons:0:nil:first:sel cons :: s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel mark :: s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel from :: s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel s :: s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel a__first :: s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel 0 :: s:from:cons:0:nil:first:sel nil :: s:from:cons:0:nil:first:sel first :: s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel a__sel :: s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel sel :: s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel Rewrite Strategy: INNERMOST ---------------------------------------- (31) 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 ---------------------------------------- (32) Obligation: Complexity RNTS consisting of the following rules: a__first(z, z') -{ 1 }-> 1 :|: Z >= 0, z' = Z, z = 0 a__first(z, z') -{ 1 }-> 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, z = X1, z' = X2 a__first(z, z') -{ 1 }-> 1 + mark(Y) + (1 + X + Z) :|: Z >= 0, z = 1 + X, Y >= 0, X >= 0, z' = 1 + Y + Z 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__sel(z, z') -{ 1 }-> mark(X) :|: Z >= 0, X >= 0, z = 0, z' = 1 + X + Z a__sel(z, z') -{ 1 }-> a__sel(mark(X), mark(Z)) :|: Z >= 0, z = 1 + X, Y >= 0, X >= 0, z' = 1 + Y + Z a__sel(z, z') -{ 1 }-> 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, z = X1, z' = X2 mark(z) -{ 1 }-> a__sel(mark(X1), mark(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2 mark(z) -{ 2 }-> a__from(a__sel(mark(X124), mark(X224))) :|: X124 >= 0, X224 >= 0, z = 1 + (1 + X124 + X224) mark(z) -{ 2 }-> a__from(a__from(mark(X35))) :|: z = 1 + (1 + X35), X35 >= 0 mark(z) -{ 2 }-> a__from(a__first(mark(X123), mark(X223))) :|: X223 >= 0, z = 1 + (1 + X123 + X223), X123 >= 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(X36)) :|: X36 >= 0, z = 1 + (1 + X36) mark(z) -{ 2 }-> a__from(1 + mark(X125) + X225) :|: X125 >= 0, X225 >= 0, z = 1 + (1 + X125 + X225) mark(z) -{ 1 }-> a__first(mark(X1), mark(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2 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 ---------------------------------------- (33) SimplificationProof (BOTH BOUNDS(ID, ID)) Simplified the RNTS by moving equalities from the constraints into the right-hand sides. ---------------------------------------- (34) Obligation: Complexity RNTS consisting of the following rules: a__first(z, z') -{ 1 }-> 1 :|: z' >= 0, z = 0 a__first(z, z') -{ 1 }-> 1 + z + z' :|: z >= 0, z' >= 0 a__first(z, z') -{ 1 }-> 1 + mark(Y) + (1 + (z - 1) + Z) :|: Z >= 0, Y >= 0, z - 1 >= 0, z' = 1 + Y + Z a__from(z) -{ 1 }-> 1 + z :|: z >= 0 a__from(z) -{ 1 }-> 1 + mark(z) + (1 + (1 + z)) :|: z >= 0 a__sel(z, z') -{ 1 }-> mark(X) :|: Z >= 0, X >= 0, z = 0, z' = 1 + X + Z a__sel(z, z') -{ 1 }-> a__sel(mark(z - 1), mark(Z)) :|: Z >= 0, Y >= 0, z - 1 >= 0, z' = 1 + Y + Z a__sel(z, z') -{ 1 }-> 1 + z + z' :|: z >= 0, z' >= 0 mark(z) -{ 1 }-> a__sel(mark(X1), mark(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2 mark(z) -{ 2 }-> a__from(a__sel(mark(X124), mark(X224))) :|: X124 >= 0, X224 >= 0, z = 1 + (1 + X124 + X224) mark(z) -{ 2 }-> a__from(a__from(mark(z - 2))) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__from(a__first(mark(X123), mark(X223))) :|: X223 >= 0, z = 1 + (1 + X123 + X223), X123 >= 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(X125) + X225) :|: X125 >= 0, X225 >= 0, z = 1 + (1 + X125 + X225) mark(z) -{ 1 }-> a__first(mark(X1), mark(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2 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 ---------------------------------------- (35) 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 ---------------------------------------- (36) 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__first(0, Z) -> nil [1] a__first(s(X), cons(Y, Z)) -> cons(mark(Y), first(X, Z)) [1] a__sel(0, cons(X, Z)) -> mark(X) [1] a__sel(s(X), cons(Y, Z)) -> a__sel(mark(X), mark(Z)) [1] mark(from(X)) -> a__from(mark(X)) [1] mark(first(X1, X2)) -> a__first(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__first(X1, X2) -> first(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:first:sel -> s:from:cons:0:nil:first:sel cons :: s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel mark :: s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel from :: s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel s :: s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel a__first :: s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel 0 :: s:from:cons:0:nil:first:sel nil :: s:from:cons:0:nil:first:sel first :: s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel a__sel :: s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel sel :: s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel -> s:from:cons:0:nil:first:sel Rewrite Strategy: INNERMOST ---------------------------------------- (37) 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 ---------------------------------------- (38) Obligation: Complexity RNTS consisting of the following rules: a__first(z, z') -{ 1 }-> 1 :|: Z >= 0, z' = Z, z = 0 a__first(z, z') -{ 1 }-> 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, z = X1, z' = X2 a__first(z, z') -{ 1 }-> 1 + mark(Y) + (1 + X + Z) :|: Z >= 0, z = 1 + X, Y >= 0, X >= 0, z' = 1 + Y + Z 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__sel(z, z') -{ 1 }-> mark(X) :|: Z >= 0, X >= 0, z = 0, z' = 1 + X + Z a__sel(z, z') -{ 1 }-> a__sel(mark(X), mark(Z)) :|: Z >= 0, z = 1 + X, Y >= 0, X >= 0, z' = 1 + Y + Z a__sel(z, z') -{ 1 }-> 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, z = X1, z' = X2 mark(z) -{ 1 }-> a__sel(mark(X1), mark(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2 mark(z) -{ 1 }-> a__from(mark(X)) :|: z = 1 + X, X >= 0 mark(z) -{ 1 }-> a__first(mark(X1), mark(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2 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. ---------------------------------------- (39) CpxTrsToCdtProof (UPPER BOUND(ID)) Converted Cpx (relative) TRS with rewrite strategy PARALLEL_INNERMOST to CDT ---------------------------------------- (40) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(0, z0) -> c2 A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__FIRST(z0, z1) -> c4 A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c6(A__SEL(mark(z0), mark(z2)), MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c7(A__SEL(mark(z0), mark(z2)), MARK(z2)) A__SEL(z0, z1) -> c8 MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(first(z0, z1)) -> c10(A__FIRST(mark(z0), mark(z1)), MARK(z0)) MARK(first(z0, z1)) -> c11(A__FIRST(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c12(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) MARK(0) -> c16 MARK(nil) -> c17 S tuples: A__FROM(z0) -> c(MARK(z0)) A__FROM(z0) -> c1 A__FIRST(0, z0) -> c2 A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__FIRST(z0, z1) -> c4 A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c6(A__SEL(mark(z0), mark(z2)), MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c7(A__SEL(mark(z0), mark(z2)), MARK(z2)) A__SEL(z0, z1) -> c8 MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(first(z0, z1)) -> c10(A__FIRST(mark(z0), mark(z1)), MARK(z0)) MARK(first(z0, z1)) -> c11(A__FIRST(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c12(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) MARK(0) -> c16 MARK(nil) -> c17 K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c1, c2, c3_1, c4, c5_1, c6_2, c7_2, c8, c9_2, c10_2, c11_2, c12_2, c13_2, c14_1, c15_1, c16, c17 ---------------------------------------- (41) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 6 trailing nodes: A__SEL(z0, z1) -> c8 MARK(nil) -> c17 A__FIRST(z0, z1) -> c4 A__FROM(z0) -> c1 A__FIRST(0, z0) -> c2 MARK(0) -> c16 ---------------------------------------- (42) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c6(A__SEL(mark(z0), mark(z2)), MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c7(A__SEL(mark(z0), mark(z2)), MARK(z2)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(first(z0, z1)) -> c10(A__FIRST(mark(z0), mark(z1)), MARK(z0)) MARK(first(z0, z1)) -> c11(A__FIRST(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c12(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c6(A__SEL(mark(z0), mark(z2)), MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c7(A__SEL(mark(z0), mark(z2)), MARK(z2)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(first(z0, z1)) -> c10(A__FIRST(mark(z0), mark(z1)), MARK(z0)) MARK(first(z0, z1)) -> c11(A__FIRST(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c12(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c6_2, c7_2, c9_2, c10_2, c11_2, c12_2, c13_2, c14_1, c15_1 ---------------------------------------- (43) CdtToCpxRelTrsProof (BOTH BOUNDS(ID, ID)) Converted S to standard rules, and D \ S as well as R to relative rules. ---------------------------------------- (44) Obligation: The Runtime Complexity (innermost) of the given CpxRelTRS could be proven to be BOUNDS(1, INF). The TRS R consists of the following rules: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c6(A__SEL(mark(z0), mark(z2)), MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c7(A__SEL(mark(z0), mark(z2)), MARK(z2)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(first(z0, z1)) -> c10(A__FIRST(mark(z0), mark(z1)), MARK(z0)) MARK(first(z0, z1)) -> c11(A__FIRST(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c12(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) The (relative) TRS S consists of the following rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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 Rewrite Strategy: INNERMOST ---------------------------------------- (45) RelTrsToTrsProof (UPPER BOUND(ID)) transformed relative TRS to TRS ---------------------------------------- (46) Obligation: The Runtime Complexity (innermost) of the given CpxTRS could be proven to be BOUNDS(1, INF). The TRS R consists of the following rules: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c6(A__SEL(mark(z0), mark(z2)), MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c7(A__SEL(mark(z0), mark(z2)), MARK(z2)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(first(z0, z1)) -> c10(A__FIRST(mark(z0), mark(z1)), MARK(z0)) MARK(first(z0, z1)) -> c11(A__FIRST(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c12(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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 S is empty. Rewrite Strategy: INNERMOST ---------------------------------------- (47) RelTrsToWeightedTrsProof (BOTH BOUNDS(ID, ID)) Transformed relative TRS to weighted TRS ---------------------------------------- (48) 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(z0) -> c(MARK(z0)) [1] A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) [1] A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) [1] A__SEL(s(z0), cons(z1, z2)) -> c6(A__SEL(mark(z0), mark(z2)), MARK(z0)) [1] A__SEL(s(z0), cons(z1, z2)) -> c7(A__SEL(mark(z0), mark(z2)), MARK(z2)) [1] MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) [1] MARK(first(z0, z1)) -> c10(A__FIRST(mark(z0), mark(z1)), MARK(z0)) [1] MARK(first(z0, z1)) -> c11(A__FIRST(mark(z0), mark(z1)), MARK(z1)) [1] MARK(sel(z0, z1)) -> c12(A__SEL(mark(z0), mark(z1)), MARK(z0)) [1] MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) [1] MARK(cons(z0, z1)) -> c14(MARK(z0)) [1] MARK(s(z0)) -> c15(MARK(z0)) [1] a__from(z0) -> cons(mark(z0), from(s(z0))) [0] a__from(z0) -> from(z0) [0] a__first(0, z0) -> nil [0] a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) [0] a__first(z0, z1) -> first(z0, z1) [0] a__sel(0, cons(z0, z1)) -> mark(z0) [0] a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) [0] a__sel(z0, z1) -> sel(z0, z1) [0] mark(from(z0)) -> a__from(mark(z0)) [0] mark(first(z0, z1)) -> a__first(mark(z0), mark(z1)) [0] mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) [0] mark(cons(z0, z1)) -> cons(mark(z0), z1) [0] mark(s(z0)) -> s(mark(z0)) [0] mark(0) -> 0 [0] mark(nil) -> nil [0] Rewrite Strategy: INNERMOST ---------------------------------------- (49) TypeInferenceProof (BOTH BOUNDS(ID, ID)) Infered types. ---------------------------------------- (50) Obligation: Runtime Complexity Weighted TRS with Types. The TRS R consists of the following rules: A__FROM(z0) -> c(MARK(z0)) [1] A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) [1] A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) [1] A__SEL(s(z0), cons(z1, z2)) -> c6(A__SEL(mark(z0), mark(z2)), MARK(z0)) [1] A__SEL(s(z0), cons(z1, z2)) -> c7(A__SEL(mark(z0), mark(z2)), MARK(z2)) [1] MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) [1] MARK(first(z0, z1)) -> c10(A__FIRST(mark(z0), mark(z1)), MARK(z0)) [1] MARK(first(z0, z1)) -> c11(A__FIRST(mark(z0), mark(z1)), MARK(z1)) [1] MARK(sel(z0, z1)) -> c12(A__SEL(mark(z0), mark(z1)), MARK(z0)) [1] MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) [1] MARK(cons(z0, z1)) -> c14(MARK(z0)) [1] MARK(s(z0)) -> c15(MARK(z0)) [1] a__from(z0) -> cons(mark(z0), from(s(z0))) [0] a__from(z0) -> from(z0) [0] a__first(0, z0) -> nil [0] a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) [0] a__first(z0, z1) -> first(z0, z1) [0] a__sel(0, cons(z0, z1)) -> mark(z0) [0] a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) [0] a__sel(z0, z1) -> sel(z0, z1) [0] mark(from(z0)) -> a__from(mark(z0)) [0] mark(first(z0, z1)) -> a__first(mark(z0), mark(z1)) [0] mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) [0] mark(cons(z0, z1)) -> cons(mark(z0), z1) [0] mark(s(z0)) -> s(mark(z0)) [0] mark(0) -> 0 [0] mark(nil) -> nil [0] The TRS has the following type information: A__FROM :: s:cons:0:from:first:sel:nil -> c c :: c9:c10:c11:c12:c13:c14:c15 -> c MARK :: s:cons:0:from:first:sel:nil -> c9:c10:c11:c12:c13:c14:c15 A__FIRST :: s:cons:0:from:first:sel:nil -> s:cons:0:from:first:sel:nil -> c3 s :: s:cons:0:from:first:sel:nil -> s:cons:0:from:first:sel:nil cons :: s:cons:0:from:first:sel:nil -> s:cons:0:from:first:sel:nil -> s:cons:0:from:first:sel:nil c3 :: c9:c10:c11:c12:c13:c14:c15 -> c3 A__SEL :: s:cons:0:from:first:sel:nil -> s:cons:0:from:first:sel:nil -> c5:c6:c7 0 :: s:cons:0:from:first:sel:nil c5 :: c9:c10:c11:c12:c13:c14:c15 -> c5:c6:c7 c6 :: c5:c6:c7 -> c9:c10:c11:c12:c13:c14:c15 -> c5:c6:c7 mark :: s:cons:0:from:first:sel:nil -> s:cons:0:from:first:sel:nil c7 :: c5:c6:c7 -> c9:c10:c11:c12:c13:c14:c15 -> c5:c6:c7 from :: s:cons:0:from:first:sel:nil -> s:cons:0:from:first:sel:nil c9 :: c -> c9:c10:c11:c12:c13:c14:c15 -> c9:c10:c11:c12:c13:c14:c15 first :: s:cons:0:from:first:sel:nil -> s:cons:0:from:first:sel:nil -> s:cons:0:from:first:sel:nil c10 :: c3 -> c9:c10:c11:c12:c13:c14:c15 -> c9:c10:c11:c12:c13:c14:c15 c11 :: c3 -> c9:c10:c11:c12:c13:c14:c15 -> c9:c10:c11:c12:c13:c14:c15 sel :: s:cons:0:from:first:sel:nil -> s:cons:0:from:first:sel:nil -> s:cons:0:from:first:sel:nil c12 :: c5:c6:c7 -> c9:c10:c11:c12:c13:c14:c15 -> c9:c10:c11:c12:c13:c14:c15 c13 :: c5:c6:c7 -> c9:c10:c11:c12:c13:c14:c15 -> c9:c10:c11:c12:c13:c14:c15 c14 :: c9:c10:c11:c12:c13:c14:c15 -> c9:c10:c11:c12:c13:c14:c15 c15 :: c9:c10:c11:c12:c13:c14:c15 -> c9:c10:c11:c12:c13:c14:c15 a__from :: s:cons:0:from:first:sel:nil -> s:cons:0:from:first:sel:nil a__first :: s:cons:0:from:first:sel:nil -> s:cons:0:from:first:sel:nil -> s:cons:0:from:first:sel:nil nil :: s:cons:0:from:first:sel:nil a__sel :: s:cons:0:from:first:sel:nil -> s:cons:0:from:first:sel:nil -> s:cons:0:from:first:sel:nil Rewrite Strategy: INNERMOST ---------------------------------------- (51) 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: A__FROM_1 A__FIRST_2 A__SEL_2 MARK_1 (c) The following functions are completely defined: a__from_1 a__first_2 a__sel_2 mark_1 Due to the following rules being added: a__from(v0) -> null_a__from [0] a__first(v0, v1) -> null_a__first [0] a__sel(v0, v1) -> null_a__sel [0] mark(v0) -> null_mark [0] And the following fresh constants: null_a__from, null_a__first, null_a__sel, null_mark, const, const1, const2, const3 ---------------------------------------- (52) 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(z0) -> c(MARK(z0)) [1] A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) [1] A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) [1] A__SEL(s(z0), cons(z1, z2)) -> c6(A__SEL(mark(z0), mark(z2)), MARK(z0)) [1] A__SEL(s(z0), cons(z1, z2)) -> c7(A__SEL(mark(z0), mark(z2)), MARK(z2)) [1] MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) [1] MARK(first(z0, z1)) -> c10(A__FIRST(mark(z0), mark(z1)), MARK(z0)) [1] MARK(first(z0, z1)) -> c11(A__FIRST(mark(z0), mark(z1)), MARK(z1)) [1] MARK(sel(z0, z1)) -> c12(A__SEL(mark(z0), mark(z1)), MARK(z0)) [1] MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) [1] MARK(cons(z0, z1)) -> c14(MARK(z0)) [1] MARK(s(z0)) -> c15(MARK(z0)) [1] a__from(z0) -> cons(mark(z0), from(s(z0))) [0] a__from(z0) -> from(z0) [0] a__first(0, z0) -> nil [0] a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) [0] a__first(z0, z1) -> first(z0, z1) [0] a__sel(0, cons(z0, z1)) -> mark(z0) [0] a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) [0] a__sel(z0, z1) -> sel(z0, z1) [0] mark(from(z0)) -> a__from(mark(z0)) [0] mark(first(z0, z1)) -> a__first(mark(z0), mark(z1)) [0] mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) [0] mark(cons(z0, z1)) -> cons(mark(z0), z1) [0] mark(s(z0)) -> s(mark(z0)) [0] mark(0) -> 0 [0] mark(nil) -> nil [0] a__from(v0) -> null_a__from [0] a__first(v0, v1) -> null_a__first [0] a__sel(v0, v1) -> null_a__sel [0] mark(v0) -> null_mark [0] The TRS has the following type information: A__FROM :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> c c :: c9:c10:c11:c12:c13:c14:c15 -> c MARK :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> c9:c10:c11:c12:c13:c14:c15 A__FIRST :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> c3 s :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark cons :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark c3 :: c9:c10:c11:c12:c13:c14:c15 -> c3 A__SEL :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> c5:c6:c7 0 :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark c5 :: c9:c10:c11:c12:c13:c14:c15 -> c5:c6:c7 c6 :: c5:c6:c7 -> c9:c10:c11:c12:c13:c14:c15 -> c5:c6:c7 mark :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark c7 :: c5:c6:c7 -> c9:c10:c11:c12:c13:c14:c15 -> c5:c6:c7 from :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark c9 :: c -> c9:c10:c11:c12:c13:c14:c15 -> c9:c10:c11:c12:c13:c14:c15 first :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark c10 :: c3 -> c9:c10:c11:c12:c13:c14:c15 -> c9:c10:c11:c12:c13:c14:c15 c11 :: c3 -> c9:c10:c11:c12:c13:c14:c15 -> c9:c10:c11:c12:c13:c14:c15 sel :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark c12 :: c5:c6:c7 -> c9:c10:c11:c12:c13:c14:c15 -> c9:c10:c11:c12:c13:c14:c15 c13 :: c5:c6:c7 -> c9:c10:c11:c12:c13:c14:c15 -> c9:c10:c11:c12:c13:c14:c15 c14 :: c9:c10:c11:c12:c13:c14:c15 -> c9:c10:c11:c12:c13:c14:c15 c15 :: c9:c10:c11:c12:c13:c14:c15 -> c9:c10:c11:c12:c13:c14:c15 a__from :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark a__first :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark nil :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark a__sel :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark null_a__from :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark null_a__first :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark null_a__sel :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark null_mark :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark const :: c const1 :: c9:c10:c11:c12:c13:c14:c15 const2 :: c3 const3 :: c5:c6:c7 Rewrite Strategy: INNERMOST ---------------------------------------- (53) NarrowingProof (BOTH BOUNDS(ID, ID)) Narrowed the inner basic terms of all right-hand sides by a single narrowing step. ---------------------------------------- (54) 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(z0) -> c(MARK(z0)) [1] A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) [1] A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) [1] A__SEL(s(z0), cons(z1, z2)) -> c6(A__SEL(mark(z0), mark(z2)), MARK(z0)) [1] A__SEL(s(z0), cons(z1, z2)) -> c7(A__SEL(mark(z0), mark(z2)), MARK(z2)) [1] MARK(from(from(z089))) -> c9(A__FROM(a__from(mark(z089))), MARK(from(z089))) [1] MARK(from(first(z090, z153))) -> c9(A__FROM(a__first(mark(z090), mark(z153))), MARK(first(z090, z153))) [1] MARK(from(sel(z091, z154))) -> c9(A__FROM(a__sel(mark(z091), mark(z154))), MARK(sel(z091, z154))) [1] MARK(from(cons(z092, z155))) -> c9(A__FROM(cons(mark(z092), z155)), MARK(cons(z092, z155))) [1] MARK(from(s(z093))) -> c9(A__FROM(s(mark(z093))), MARK(s(z093))) [1] MARK(from(0)) -> c9(A__FROM(0), MARK(0)) [1] MARK(from(nil)) -> c9(A__FROM(nil), MARK(nil)) [1] MARK(from(z0)) -> c9(A__FROM(null_mark), MARK(z0)) [1] MARK(first(z0, z1)) -> c10(A__FIRST(mark(z0), mark(z1)), MARK(z0)) [1] MARK(first(z0, z1)) -> c11(A__FIRST(mark(z0), mark(z1)), MARK(z1)) [1] MARK(sel(z0, z1)) -> c12(A__SEL(mark(z0), mark(z1)), MARK(z0)) [1] MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) [1] MARK(cons(z0, z1)) -> c14(MARK(z0)) [1] MARK(s(z0)) -> c15(MARK(z0)) [1] a__from(z0) -> cons(mark(z0), from(s(z0))) [0] a__from(z0) -> from(z0) [0] a__first(0, z0) -> nil [0] a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) [0] a__first(z0, z1) -> first(z0, z1) [0] a__sel(0, cons(z0, z1)) -> mark(z0) [0] a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) [0] a__sel(z0, z1) -> sel(z0, z1) [0] mark(from(from(z0319))) -> a__from(a__from(mark(z0319))) [0] mark(from(first(z0320, z1191))) -> a__from(a__first(mark(z0320), mark(z1191))) [0] mark(from(sel(z0321, z1192))) -> a__from(a__sel(mark(z0321), mark(z1192))) [0] mark(from(cons(z0322, z1193))) -> a__from(cons(mark(z0322), z1193)) [0] mark(from(s(z0323))) -> a__from(s(mark(z0323))) [0] mark(from(0)) -> a__from(0) [0] mark(from(nil)) -> a__from(nil) [0] mark(from(z0)) -> a__from(null_mark) [0] mark(first(z0, z1)) -> a__first(mark(z0), mark(z1)) [0] mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) [0] mark(cons(z0, z1)) -> cons(mark(z0), z1) [0] mark(s(z0)) -> s(mark(z0)) [0] mark(0) -> 0 [0] mark(nil) -> nil [0] a__from(v0) -> null_a__from [0] a__first(v0, v1) -> null_a__first [0] a__sel(v0, v1) -> null_a__sel [0] mark(v0) -> null_mark [0] The TRS has the following type information: A__FROM :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> c c :: c9:c10:c11:c12:c13:c14:c15 -> c MARK :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> c9:c10:c11:c12:c13:c14:c15 A__FIRST :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> c3 s :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark cons :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark c3 :: c9:c10:c11:c12:c13:c14:c15 -> c3 A__SEL :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> c5:c6:c7 0 :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark c5 :: c9:c10:c11:c12:c13:c14:c15 -> c5:c6:c7 c6 :: c5:c6:c7 -> c9:c10:c11:c12:c13:c14:c15 -> c5:c6:c7 mark :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark c7 :: c5:c6:c7 -> c9:c10:c11:c12:c13:c14:c15 -> c5:c6:c7 from :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark c9 :: c -> c9:c10:c11:c12:c13:c14:c15 -> c9:c10:c11:c12:c13:c14:c15 first :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark c10 :: c3 -> c9:c10:c11:c12:c13:c14:c15 -> c9:c10:c11:c12:c13:c14:c15 c11 :: c3 -> c9:c10:c11:c12:c13:c14:c15 -> c9:c10:c11:c12:c13:c14:c15 sel :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark c12 :: c5:c6:c7 -> c9:c10:c11:c12:c13:c14:c15 -> c9:c10:c11:c12:c13:c14:c15 c13 :: c5:c6:c7 -> c9:c10:c11:c12:c13:c14:c15 -> c9:c10:c11:c12:c13:c14:c15 c14 :: c9:c10:c11:c12:c13:c14:c15 -> c9:c10:c11:c12:c13:c14:c15 c15 :: c9:c10:c11:c12:c13:c14:c15 -> c9:c10:c11:c12:c13:c14:c15 a__from :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark a__first :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark nil :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark a__sel :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark null_a__from :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark null_a__first :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark null_a__sel :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark null_mark :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark const :: c const1 :: c9:c10:c11:c12:c13:c14:c15 const2 :: c3 const3 :: c5:c6:c7 Rewrite Strategy: INNERMOST ---------------------------------------- (55) 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 null_a__from => 0 null_a__first => 0 null_a__sel => 0 null_mark => 0 const => 0 const1 => 0 const2 => 0 const3 => 0 ---------------------------------------- (56) Obligation: Complexity RNTS consisting of the following rules: A__FIRST(z, z') -{ 1 }-> 1 + MARK(z1) :|: z1 >= 0, z' = 1 + z1 + z2, z = 1 + z0, z0 >= 0, z2 >= 0 A__FROM(z) -{ 1 }-> 1 + MARK(z0) :|: z = z0, z0 >= 0 A__SEL(z, z') -{ 1 }-> 1 + MARK(z0) :|: z' = 1 + z0 + z1, z1 >= 0, z0 >= 0, z = 0 A__SEL(z, z') -{ 1 }-> 1 + A__SEL(mark(z0), mark(z2)) + MARK(z0) :|: z1 >= 0, z' = 1 + z1 + z2, z = 1 + z0, z0 >= 0, z2 >= 0 A__SEL(z, z') -{ 1 }-> 1 + A__SEL(mark(z0), mark(z2)) + MARK(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z = 1 + z0, z0 >= 0, z2 >= 0 MARK(z) -{ 1 }-> 1 + MARK(z0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 MARK(z) -{ 1 }-> 1 + MARK(z0) :|: z = 1 + z0, z0 >= 0 MARK(z) -{ 1 }-> 1 + A__SEL(mark(z0), mark(z1)) + MARK(z0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 MARK(z) -{ 1 }-> 1 + A__SEL(mark(z0), mark(z1)) + MARK(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 MARK(z) -{ 1 }-> 1 + A__FROM(a__sel(mark(z091), mark(z154))) + MARK(1 + z091 + z154) :|: z091 >= 0, z154 >= 0, z = 1 + (1 + z091 + z154) MARK(z) -{ 1 }-> 1 + A__FROM(a__from(mark(z089))) + MARK(1 + z089) :|: z089 >= 0, z = 1 + (1 + z089) MARK(z) -{ 1 }-> 1 + A__FROM(a__first(mark(z090), mark(z153))) + MARK(1 + z090 + z153) :|: z153 >= 0, z = 1 + (1 + z090 + z153), z090 >= 0 MARK(z) -{ 1 }-> 1 + A__FROM(1) + MARK(1) :|: z = 1 + 1 MARK(z) -{ 1 }-> 1 + A__FROM(0) + MARK(z0) :|: z = 1 + z0, z0 >= 0 MARK(z) -{ 1 }-> 1 + A__FROM(0) + MARK(0) :|: z = 1 + 0 MARK(z) -{ 1 }-> 1 + A__FROM(1 + mark(z093)) + MARK(1 + z093) :|: z = 1 + (1 + z093), z093 >= 0 MARK(z) -{ 1 }-> 1 + A__FROM(1 + mark(z092) + z155) + MARK(1 + z092 + z155) :|: z155 >= 0, z092 >= 0, z = 1 + (1 + z092 + z155) MARK(z) -{ 1 }-> 1 + A__FIRST(mark(z0), mark(z1)) + MARK(z0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 MARK(z) -{ 1 }-> 1 + A__FIRST(mark(z0), mark(z1)) + MARK(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 a__first(z, z') -{ 0 }-> 1 :|: z0 >= 0, z = 0, z' = z0 a__first(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 a__first(z, z') -{ 0 }-> 1 + z0 + z1 :|: z = z0, z1 >= 0, z' = z1, z0 >= 0 a__first(z, z') -{ 0 }-> 1 + mark(z1) + (1 + z0 + z2) :|: z1 >= 0, z' = 1 + z1 + z2, z = 1 + z0, z0 >= 0, z2 >= 0 a__from(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 a__from(z) -{ 0 }-> 1 + z0 :|: z = z0, z0 >= 0 a__from(z) -{ 0 }-> 1 + mark(z0) + (1 + (1 + z0)) :|: z = z0, z0 >= 0 a__sel(z, z') -{ 0 }-> mark(z0) :|: z' = 1 + z0 + z1, z1 >= 0, z0 >= 0, z = 0 a__sel(z, z') -{ 0 }-> a__sel(mark(z0), mark(z2)) :|: z1 >= 0, z' = 1 + z1 + z2, z = 1 + z0, z0 >= 0, z2 >= 0 a__sel(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 a__sel(z, z') -{ 0 }-> 1 + z0 + z1 :|: z = z0, z1 >= 0, z' = z1, z0 >= 0 mark(z) -{ 0 }-> a__sel(mark(z0), mark(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 mark(z) -{ 0 }-> a__from(a__sel(mark(z0321), mark(z1192))) :|: z = 1 + (1 + z0321 + z1192), z0321 >= 0, z1192 >= 0 mark(z) -{ 0 }-> a__from(a__from(mark(z0319))) :|: z0319 >= 0, z = 1 + (1 + z0319) mark(z) -{ 0 }-> a__from(a__first(mark(z0320), mark(z1191))) :|: z0320 >= 0, z1191 >= 0, z = 1 + (1 + z0320 + z1191) mark(z) -{ 0 }-> a__from(1) :|: z = 1 + 1 mark(z) -{ 0 }-> a__from(0) :|: z = 1 + 0 mark(z) -{ 0 }-> a__from(0) :|: z = 1 + z0, z0 >= 0 mark(z) -{ 0 }-> a__from(1 + mark(z0323)) :|: z = 1 + (1 + z0323), z0323 >= 0 mark(z) -{ 0 }-> a__from(1 + mark(z0322) + z1193) :|: z1193 >= 0, z = 1 + (1 + z0322 + z1193), z0322 >= 0 mark(z) -{ 0 }-> a__first(mark(z0), mark(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 mark(z) -{ 0 }-> 1 :|: z = 1 mark(z) -{ 0 }-> 0 :|: z = 0 mark(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 mark(z) -{ 0 }-> 1 + mark(z0) :|: z = 1 + z0, z0 >= 0 mark(z) -{ 0 }-> 1 + mark(z0) + z1 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 ---------------------------------------- (57) SimplificationProof (BOTH BOUNDS(ID, ID)) Simplified the RNTS by moving equalities from the constraints into the right-hand sides. ---------------------------------------- (58) Obligation: Complexity RNTS consisting of the following rules: A__FIRST(z, z') -{ 1 }-> 1 + MARK(z1) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 A__FROM(z) -{ 1 }-> 1 + MARK(z) :|: z >= 0 A__SEL(z, z') -{ 1 }-> 1 + MARK(z0) :|: z' = 1 + z0 + z1, z1 >= 0, z0 >= 0, z = 0 A__SEL(z, z') -{ 1 }-> 1 + A__SEL(mark(z - 1), mark(z2)) + MARK(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 A__SEL(z, z') -{ 1 }-> 1 + A__SEL(mark(z - 1), mark(z2)) + MARK(z - 1) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 MARK(z) -{ 1 }-> 1 + MARK(z0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 MARK(z) -{ 1 }-> 1 + MARK(z - 1) :|: z - 1 >= 0 MARK(z) -{ 1 }-> 1 + A__SEL(mark(z0), mark(z1)) + MARK(z0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 MARK(z) -{ 1 }-> 1 + A__SEL(mark(z0), mark(z1)) + MARK(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 MARK(z) -{ 1 }-> 1 + A__FROM(a__sel(mark(z091), mark(z154))) + MARK(1 + z091 + z154) :|: z091 >= 0, z154 >= 0, z = 1 + (1 + z091 + z154) MARK(z) -{ 1 }-> 1 + A__FROM(a__from(mark(z - 2))) + MARK(1 + (z - 2)) :|: z - 2 >= 0 MARK(z) -{ 1 }-> 1 + A__FROM(a__first(mark(z090), mark(z153))) + MARK(1 + z090 + z153) :|: z153 >= 0, z = 1 + (1 + z090 + z153), z090 >= 0 MARK(z) -{ 1 }-> 1 + A__FROM(1) + MARK(1) :|: z = 1 + 1 MARK(z) -{ 1 }-> 1 + A__FROM(0) + MARK(0) :|: z = 1 + 0 MARK(z) -{ 1 }-> 1 + A__FROM(0) + MARK(z - 1) :|: z - 1 >= 0 MARK(z) -{ 1 }-> 1 + A__FROM(1 + mark(z - 2)) + MARK(1 + (z - 2)) :|: z - 2 >= 0 MARK(z) -{ 1 }-> 1 + A__FROM(1 + mark(z092) + z155) + MARK(1 + z092 + z155) :|: z155 >= 0, z092 >= 0, z = 1 + (1 + z092 + z155) MARK(z) -{ 1 }-> 1 + A__FIRST(mark(z0), mark(z1)) + MARK(z0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 MARK(z) -{ 1 }-> 1 + A__FIRST(mark(z0), mark(z1)) + MARK(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 a__first(z, z') -{ 0 }-> 1 :|: z' >= 0, z = 0 a__first(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 a__first(z, z') -{ 0 }-> 1 + z + z' :|: z' >= 0, z >= 0 a__first(z, z') -{ 0 }-> 1 + mark(z1) + (1 + (z - 1) + z2) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 a__from(z) -{ 0 }-> 0 :|: z >= 0 a__from(z) -{ 0 }-> 1 + z :|: z >= 0 a__from(z) -{ 0 }-> 1 + mark(z) + (1 + (1 + z)) :|: z >= 0 a__sel(z, z') -{ 0 }-> mark(z0) :|: z' = 1 + z0 + z1, z1 >= 0, z0 >= 0, z = 0 a__sel(z, z') -{ 0 }-> a__sel(mark(z - 1), mark(z2)) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 a__sel(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 a__sel(z, z') -{ 0 }-> 1 + z + z' :|: z' >= 0, z >= 0 mark(z) -{ 0 }-> a__sel(mark(z0), mark(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 mark(z) -{ 0 }-> a__from(a__sel(mark(z0321), mark(z1192))) :|: z = 1 + (1 + z0321 + z1192), z0321 >= 0, z1192 >= 0 mark(z) -{ 0 }-> a__from(a__from(mark(z - 2))) :|: z - 2 >= 0 mark(z) -{ 0 }-> a__from(a__first(mark(z0320), mark(z1191))) :|: z0320 >= 0, z1191 >= 0, z = 1 + (1 + z0320 + z1191) mark(z) -{ 0 }-> a__from(1) :|: z = 1 + 1 mark(z) -{ 0 }-> a__from(0) :|: z = 1 + 0 mark(z) -{ 0 }-> a__from(0) :|: z - 1 >= 0 mark(z) -{ 0 }-> a__from(1 + mark(z - 2)) :|: z - 2 >= 0 mark(z) -{ 0 }-> a__from(1 + mark(z0322) + z1193) :|: z1193 >= 0, z = 1 + (1 + z0322 + z1193), z0322 >= 0 mark(z) -{ 0 }-> a__first(mark(z0), mark(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 mark(z) -{ 0 }-> 1 :|: z = 1 mark(z) -{ 0 }-> 0 :|: z = 0 mark(z) -{ 0 }-> 0 :|: z >= 0 mark(z) -{ 0 }-> 1 + mark(z - 1) :|: z - 1 >= 0 mark(z) -{ 0 }-> 1 + mark(z0) + z1 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 ---------------------------------------- (59) 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: a__from(v0) -> null_a__from [0] a__first(v0, v1) -> null_a__first [0] a__sel(v0, v1) -> null_a__sel [0] mark(v0) -> null_mark [0] A__FIRST(v0, v1) -> null_A__FIRST [0] A__SEL(v0, v1) -> null_A__SEL [0] MARK(v0) -> null_MARK [0] And the following fresh constants: null_a__from, null_a__first, null_a__sel, null_mark, null_A__FIRST, null_A__SEL, null_MARK, const ---------------------------------------- (60) 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(z0) -> c(MARK(z0)) [1] A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) [1] A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) [1] A__SEL(s(z0), cons(z1, z2)) -> c6(A__SEL(mark(z0), mark(z2)), MARK(z0)) [1] A__SEL(s(z0), cons(z1, z2)) -> c7(A__SEL(mark(z0), mark(z2)), MARK(z2)) [1] MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) [1] MARK(first(z0, z1)) -> c10(A__FIRST(mark(z0), mark(z1)), MARK(z0)) [1] MARK(first(z0, z1)) -> c11(A__FIRST(mark(z0), mark(z1)), MARK(z1)) [1] MARK(sel(z0, z1)) -> c12(A__SEL(mark(z0), mark(z1)), MARK(z0)) [1] MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) [1] MARK(cons(z0, z1)) -> c14(MARK(z0)) [1] MARK(s(z0)) -> c15(MARK(z0)) [1] a__from(z0) -> cons(mark(z0), from(s(z0))) [0] a__from(z0) -> from(z0) [0] a__first(0, z0) -> nil [0] a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) [0] a__first(z0, z1) -> first(z0, z1) [0] a__sel(0, cons(z0, z1)) -> mark(z0) [0] a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) [0] a__sel(z0, z1) -> sel(z0, z1) [0] mark(from(z0)) -> a__from(mark(z0)) [0] mark(first(z0, z1)) -> a__first(mark(z0), mark(z1)) [0] mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) [0] mark(cons(z0, z1)) -> cons(mark(z0), z1) [0] mark(s(z0)) -> s(mark(z0)) [0] mark(0) -> 0 [0] mark(nil) -> nil [0] a__from(v0) -> null_a__from [0] a__first(v0, v1) -> null_a__first [0] a__sel(v0, v1) -> null_a__sel [0] mark(v0) -> null_mark [0] A__FIRST(v0, v1) -> null_A__FIRST [0] A__SEL(v0, v1) -> null_A__SEL [0] MARK(v0) -> null_MARK [0] The TRS has the following type information: A__FROM :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> c c :: c9:c10:c11:c12:c13:c14:c15:null_MARK -> c MARK :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> c9:c10:c11:c12:c13:c14:c15:null_MARK A__FIRST :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> c3:null_A__FIRST s :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark cons :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark c3 :: c9:c10:c11:c12:c13:c14:c15:null_MARK -> c3:null_A__FIRST A__SEL :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> c5:c6:c7:null_A__SEL 0 :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark c5 :: c9:c10:c11:c12:c13:c14:c15:null_MARK -> c5:c6:c7:null_A__SEL c6 :: c5:c6:c7:null_A__SEL -> c9:c10:c11:c12:c13:c14:c15:null_MARK -> c5:c6:c7:null_A__SEL mark :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark c7 :: c5:c6:c7:null_A__SEL -> c9:c10:c11:c12:c13:c14:c15:null_MARK -> c5:c6:c7:null_A__SEL from :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark c9 :: c -> c9:c10:c11:c12:c13:c14:c15:null_MARK -> c9:c10:c11:c12:c13:c14:c15:null_MARK first :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark c10 :: c3:null_A__FIRST -> c9:c10:c11:c12:c13:c14:c15:null_MARK -> c9:c10:c11:c12:c13:c14:c15:null_MARK c11 :: c3:null_A__FIRST -> c9:c10:c11:c12:c13:c14:c15:null_MARK -> c9:c10:c11:c12:c13:c14:c15:null_MARK sel :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark c12 :: c5:c6:c7:null_A__SEL -> c9:c10:c11:c12:c13:c14:c15:null_MARK -> c9:c10:c11:c12:c13:c14:c15:null_MARK c13 :: c5:c6:c7:null_A__SEL -> c9:c10:c11:c12:c13:c14:c15:null_MARK -> c9:c10:c11:c12:c13:c14:c15:null_MARK c14 :: c9:c10:c11:c12:c13:c14:c15:null_MARK -> c9:c10:c11:c12:c13:c14:c15:null_MARK c15 :: c9:c10:c11:c12:c13:c14:c15:null_MARK -> c9:c10:c11:c12:c13:c14:c15:null_MARK a__from :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark a__first :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark nil :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark a__sel :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark -> s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark null_a__from :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark null_a__first :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark null_a__sel :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark null_mark :: s:cons:0:from:first:sel:nil:null_a__from:null_a__first:null_a__sel:null_mark null_A__FIRST :: c3:null_A__FIRST null_A__SEL :: c5:c6:c7:null_A__SEL null_MARK :: c9:c10:c11:c12:c13:c14:c15:null_MARK const :: c Rewrite Strategy: INNERMOST ---------------------------------------- (61) 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 null_a__from => 0 null_a__first => 0 null_a__sel => 0 null_mark => 0 null_A__FIRST => 0 null_A__SEL => 0 null_MARK => 0 const => 0 ---------------------------------------- (62) Obligation: Complexity RNTS consisting of the following rules: A__FIRST(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 A__FIRST(z, z') -{ 1 }-> 1 + MARK(z1) :|: z1 >= 0, z' = 1 + z1 + z2, z = 1 + z0, z0 >= 0, z2 >= 0 A__FROM(z) -{ 1 }-> 1 + MARK(z0) :|: z = z0, z0 >= 0 A__SEL(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 A__SEL(z, z') -{ 1 }-> 1 + MARK(z0) :|: z' = 1 + z0 + z1, z1 >= 0, z0 >= 0, z = 0 A__SEL(z, z') -{ 1 }-> 1 + A__SEL(mark(z0), mark(z2)) + MARK(z0) :|: z1 >= 0, z' = 1 + z1 + z2, z = 1 + z0, z0 >= 0, z2 >= 0 A__SEL(z, z') -{ 1 }-> 1 + A__SEL(mark(z0), mark(z2)) + MARK(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z = 1 + z0, z0 >= 0, z2 >= 0 MARK(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 MARK(z) -{ 1 }-> 1 + MARK(z0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 MARK(z) -{ 1 }-> 1 + MARK(z0) :|: z = 1 + z0, z0 >= 0 MARK(z) -{ 1 }-> 1 + A__SEL(mark(z0), mark(z1)) + MARK(z0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 MARK(z) -{ 1 }-> 1 + A__SEL(mark(z0), mark(z1)) + MARK(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 MARK(z) -{ 1 }-> 1 + A__FROM(mark(z0)) + MARK(z0) :|: z = 1 + z0, z0 >= 0 MARK(z) -{ 1 }-> 1 + A__FIRST(mark(z0), mark(z1)) + MARK(z0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 MARK(z) -{ 1 }-> 1 + A__FIRST(mark(z0), mark(z1)) + MARK(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 a__first(z, z') -{ 0 }-> 1 :|: z0 >= 0, z = 0, z' = z0 a__first(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 a__first(z, z') -{ 0 }-> 1 + z0 + z1 :|: z = z0, z1 >= 0, z' = z1, z0 >= 0 a__first(z, z') -{ 0 }-> 1 + mark(z1) + (1 + z0 + z2) :|: z1 >= 0, z' = 1 + z1 + z2, z = 1 + z0, z0 >= 0, z2 >= 0 a__from(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 a__from(z) -{ 0 }-> 1 + z0 :|: z = z0, z0 >= 0 a__from(z) -{ 0 }-> 1 + mark(z0) + (1 + (1 + z0)) :|: z = z0, z0 >= 0 a__sel(z, z') -{ 0 }-> mark(z0) :|: z' = 1 + z0 + z1, z1 >= 0, z0 >= 0, z = 0 a__sel(z, z') -{ 0 }-> a__sel(mark(z0), mark(z2)) :|: z1 >= 0, z' = 1 + z1 + z2, z = 1 + z0, z0 >= 0, z2 >= 0 a__sel(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 a__sel(z, z') -{ 0 }-> 1 + z0 + z1 :|: z = z0, z1 >= 0, z' = z1, z0 >= 0 mark(z) -{ 0 }-> a__sel(mark(z0), mark(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 mark(z) -{ 0 }-> a__from(mark(z0)) :|: z = 1 + z0, z0 >= 0 mark(z) -{ 0 }-> a__first(mark(z0), mark(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 mark(z) -{ 0 }-> 1 :|: z = 1 mark(z) -{ 0 }-> 0 :|: z = 0 mark(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 mark(z) -{ 0 }-> 1 + mark(z0) :|: z = 1 + z0, z0 >= 0 mark(z) -{ 0 }-> 1 + mark(z0) + z1 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 Only complete derivations are relevant for the runtime complexity. ---------------------------------------- (63) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__SEL(s(z0), cons(z1, z2)) -> c6(A__SEL(mark(z0), mark(z2)), MARK(z0)) by A__SEL(s(x0), cons(x1, from(z0))) -> c6(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c6(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(A__SEL(mark(x0), s(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(A__SEL(mark(x0), 0), MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(A__SEL(mark(x0), nil), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(A__SEL(cons(mark(z0), z1), mark(x2)), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2)), MARK(0)) A__SEL(s(nil), cons(x1, x2)) -> c6(A__SEL(nil, mark(x2)), MARK(nil)) ---------------------------------------- (64) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c7(A__SEL(mark(z0), mark(z2)), MARK(z2)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(first(z0, z1)) -> c10(A__FIRST(mark(z0), mark(z1)), MARK(z0)) MARK(first(z0, z1)) -> c11(A__FIRST(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c12(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, from(z0))) -> c6(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c6(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(A__SEL(mark(x0), s(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(A__SEL(mark(x0), 0), MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(A__SEL(mark(x0), nil), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(A__SEL(cons(mark(z0), z1), mark(x2)), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2)), MARK(0)) A__SEL(s(nil), cons(x1, x2)) -> c6(A__SEL(nil, mark(x2)), MARK(nil)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c7(A__SEL(mark(z0), mark(z2)), MARK(z2)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(first(z0, z1)) -> c10(A__FIRST(mark(z0), mark(z1)), MARK(z0)) MARK(first(z0, z1)) -> c11(A__FIRST(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c12(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, from(z0))) -> c6(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c6(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(A__SEL(mark(x0), s(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(A__SEL(mark(x0), 0), MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(A__SEL(mark(x0), nil), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(A__SEL(cons(mark(z0), z1), mark(x2)), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2)), MARK(0)) A__SEL(s(nil), cons(x1, x2)) -> c6(A__SEL(nil, mark(x2)), MARK(nil)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c7_2, c9_2, c10_2, c11_2, c12_2, c13_2, c14_1, c15_1, c6_2 ---------------------------------------- (65) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing nodes: A__SEL(s(nil), cons(x1, x2)) -> c6(A__SEL(nil, mark(x2)), MARK(nil)) ---------------------------------------- (66) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c7(A__SEL(mark(z0), mark(z2)), MARK(z2)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(first(z0, z1)) -> c10(A__FIRST(mark(z0), mark(z1)), MARK(z0)) MARK(first(z0, z1)) -> c11(A__FIRST(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c12(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, from(z0))) -> c6(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c6(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(A__SEL(mark(x0), s(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(A__SEL(mark(x0), 0), MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(A__SEL(mark(x0), nil), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(A__SEL(cons(mark(z0), z1), mark(x2)), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2)), MARK(0)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c7(A__SEL(mark(z0), mark(z2)), MARK(z2)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(first(z0, z1)) -> c10(A__FIRST(mark(z0), mark(z1)), MARK(z0)) MARK(first(z0, z1)) -> c11(A__FIRST(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c12(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, from(z0))) -> c6(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c6(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(A__SEL(mark(x0), s(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(A__SEL(mark(x0), 0), MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(A__SEL(mark(x0), nil), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(A__SEL(cons(mark(z0), z1), mark(x2)), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2)), MARK(0)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c7_2, c9_2, c10_2, c11_2, c12_2, c13_2, c14_1, c15_1, c6_2 ---------------------------------------- (67) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 5 trailing tuple parts ---------------------------------------- (68) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c7(A__SEL(mark(z0), mark(z2)), MARK(z2)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(first(z0, z1)) -> c10(A__FIRST(mark(z0), mark(z1)), MARK(z0)) MARK(first(z0, z1)) -> c11(A__FIRST(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c12(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, from(z0))) -> c6(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c6(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c7(A__SEL(mark(z0), mark(z2)), MARK(z2)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(first(z0, z1)) -> c10(A__FIRST(mark(z0), mark(z1)), MARK(z0)) MARK(first(z0, z1)) -> c11(A__FIRST(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c12(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, from(z0))) -> c6(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c6(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c7_2, c9_2, c10_2, c11_2, c12_2, c13_2, c14_1, c15_1, c6_2, c6_1 ---------------------------------------- (69) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__SEL(s(z0), cons(z1, z2)) -> c7(A__SEL(mark(z0), mark(z2)), MARK(z2)) by A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(A__SEL(mark(x0), s(mark(z0))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 0)) -> c7(A__SEL(mark(x0), 0), MARK(0)) A__SEL(s(x0), cons(x1, nil)) -> c7(A__SEL(mark(x0), nil), MARK(nil)) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(A__SEL(cons(mark(z0), z1), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(A__SEL(nil, mark(x2)), MARK(x2)) ---------------------------------------- (70) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(first(z0, z1)) -> c10(A__FIRST(mark(z0), mark(z1)), MARK(z0)) MARK(first(z0, z1)) -> c11(A__FIRST(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c12(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, from(z0))) -> c6(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c6(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(A__SEL(mark(x0), s(mark(z0))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 0)) -> c7(A__SEL(mark(x0), 0), MARK(0)) A__SEL(s(x0), cons(x1, nil)) -> c7(A__SEL(mark(x0), nil), MARK(nil)) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(A__SEL(cons(mark(z0), z1), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(A__SEL(nil, mark(x2)), MARK(x2)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(first(z0, z1)) -> c10(A__FIRST(mark(z0), mark(z1)), MARK(z0)) MARK(first(z0, z1)) -> c11(A__FIRST(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c12(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, from(z0))) -> c6(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c6(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(A__SEL(mark(x0), s(mark(z0))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 0)) -> c7(A__SEL(mark(x0), 0), MARK(0)) A__SEL(s(x0), cons(x1, nil)) -> c7(A__SEL(mark(x0), nil), MARK(nil)) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(A__SEL(cons(mark(z0), z1), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(A__SEL(nil, mark(x2)), MARK(x2)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c10_2, c11_2, c12_2, c13_2, c14_1, c15_1, c6_2, c6_1, c7_2 ---------------------------------------- (71) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing nodes: A__SEL(s(x0), cons(x1, nil)) -> c7(A__SEL(mark(x0), nil), MARK(nil)) A__SEL(s(x0), cons(x1, 0)) -> c7(A__SEL(mark(x0), 0), MARK(0)) ---------------------------------------- (72) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(first(z0, z1)) -> c10(A__FIRST(mark(z0), mark(z1)), MARK(z0)) MARK(first(z0, z1)) -> c11(A__FIRST(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c12(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, from(z0))) -> c6(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c6(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(A__SEL(mark(x0), s(mark(z0))), MARK(s(z0))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(A__SEL(cons(mark(z0), z1), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(A__SEL(nil, mark(x2)), MARK(x2)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(first(z0, z1)) -> c10(A__FIRST(mark(z0), mark(z1)), MARK(z0)) MARK(first(z0, z1)) -> c11(A__FIRST(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c12(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, from(z0))) -> c6(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c6(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(A__SEL(mark(x0), s(mark(z0))), MARK(s(z0))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(A__SEL(cons(mark(z0), z1), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(A__SEL(nil, mark(x2)), MARK(x2)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c10_2, c11_2, c12_2, c13_2, c14_1, c15_1, c6_2, c6_1, c7_2 ---------------------------------------- (73) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 3 trailing tuple parts ---------------------------------------- (74) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(first(z0, z1)) -> c10(A__FIRST(mark(z0), mark(z1)), MARK(z0)) MARK(first(z0, z1)) -> c11(A__FIRST(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c12(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, from(z0))) -> c6(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c6(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(first(z0, z1)) -> c10(A__FIRST(mark(z0), mark(z1)), MARK(z0)) MARK(first(z0, z1)) -> c11(A__FIRST(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c12(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, from(z0))) -> c6(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c6(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c10_2, c11_2, c12_2, c13_2, c14_1, c15_1, c6_2, c6_1, c7_2, c7_1 ---------------------------------------- (75) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(first(z0, z1)) -> c10(A__FIRST(mark(z0), mark(z1)), MARK(z0)) by MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(x0, s(z0))) -> c10(A__FIRST(mark(x0), s(mark(z0))), MARK(x0)) MARK(first(x0, 0)) -> c10(A__FIRST(mark(x0), 0), MARK(x0)) MARK(first(x0, nil)) -> c10(A__FIRST(mark(x0), nil), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(cons(z0, z1), x1)) -> c10(A__FIRST(cons(mark(z0), z1), mark(x1)), MARK(cons(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(0, x1)) -> c10(A__FIRST(0, mark(x1)), MARK(0)) MARK(first(nil, x1)) -> c10(A__FIRST(nil, mark(x1)), MARK(nil)) ---------------------------------------- (76) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(first(z0, z1)) -> c11(A__FIRST(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c12(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, from(z0))) -> c6(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c6(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(x0, s(z0))) -> c10(A__FIRST(mark(x0), s(mark(z0))), MARK(x0)) MARK(first(x0, 0)) -> c10(A__FIRST(mark(x0), 0), MARK(x0)) MARK(first(x0, nil)) -> c10(A__FIRST(mark(x0), nil), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(cons(z0, z1), x1)) -> c10(A__FIRST(cons(mark(z0), z1), mark(x1)), MARK(cons(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(0, x1)) -> c10(A__FIRST(0, mark(x1)), MARK(0)) MARK(first(nil, x1)) -> c10(A__FIRST(nil, mark(x1)), MARK(nil)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(first(z0, z1)) -> c11(A__FIRST(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c12(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, from(z0))) -> c6(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c6(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(x0, s(z0))) -> c10(A__FIRST(mark(x0), s(mark(z0))), MARK(x0)) MARK(first(x0, 0)) -> c10(A__FIRST(mark(x0), 0), MARK(x0)) MARK(first(x0, nil)) -> c10(A__FIRST(mark(x0), nil), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(cons(z0, z1), x1)) -> c10(A__FIRST(cons(mark(z0), z1), mark(x1)), MARK(cons(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(0, x1)) -> c10(A__FIRST(0, mark(x1)), MARK(0)) MARK(first(nil, x1)) -> c10(A__FIRST(nil, mark(x1)), MARK(nil)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c11_2, c12_2, c13_2, c14_1, c15_1, c6_2, c6_1, c7_2, c7_1, c10_2 ---------------------------------------- (77) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing nodes: MARK(first(0, x1)) -> c10(A__FIRST(0, mark(x1)), MARK(0)) MARK(first(nil, x1)) -> c10(A__FIRST(nil, mark(x1)), MARK(nil)) ---------------------------------------- (78) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(first(z0, z1)) -> c11(A__FIRST(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c12(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, from(z0))) -> c6(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c6(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(x0, s(z0))) -> c10(A__FIRST(mark(x0), s(mark(z0))), MARK(x0)) MARK(first(x0, 0)) -> c10(A__FIRST(mark(x0), 0), MARK(x0)) MARK(first(x0, nil)) -> c10(A__FIRST(mark(x0), nil), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(cons(z0, z1), x1)) -> c10(A__FIRST(cons(mark(z0), z1), mark(x1)), MARK(cons(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(first(z0, z1)) -> c11(A__FIRST(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c12(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, from(z0))) -> c6(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c6(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(x0, s(z0))) -> c10(A__FIRST(mark(x0), s(mark(z0))), MARK(x0)) MARK(first(x0, 0)) -> c10(A__FIRST(mark(x0), 0), MARK(x0)) MARK(first(x0, nil)) -> c10(A__FIRST(mark(x0), nil), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(cons(z0, z1), x1)) -> c10(A__FIRST(cons(mark(z0), z1), mark(x1)), MARK(cons(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c11_2, c12_2, c13_2, c14_1, c15_1, c6_2, c6_1, c7_2, c7_1, c10_2 ---------------------------------------- (79) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 4 trailing tuple parts ---------------------------------------- (80) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(first(z0, z1)) -> c11(A__FIRST(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c12(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, from(z0))) -> c6(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c6(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(first(z0, z1)) -> c11(A__FIRST(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c12(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, from(z0))) -> c6(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c6(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c11_2, c12_2, c13_2, c14_1, c15_1, c6_2, c6_1, c7_2, c7_1, c10_2, c10_1 ---------------------------------------- (81) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(first(z0, z1)) -> c11(A__FIRST(mark(z0), mark(z1)), MARK(z1)) by MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(x0, s(z0))) -> c11(A__FIRST(mark(x0), s(mark(z0))), MARK(s(z0))) MARK(first(x0, 0)) -> c11(A__FIRST(mark(x0), 0), MARK(0)) MARK(first(x0, nil)) -> c11(A__FIRST(mark(x0), nil), MARK(nil)) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(cons(z0, z1), x1)) -> c11(A__FIRST(cons(mark(z0), z1), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(0, x1)) -> c11(A__FIRST(0, mark(x1)), MARK(x1)) MARK(first(nil, x1)) -> c11(A__FIRST(nil, mark(x1)), MARK(x1)) ---------------------------------------- (82) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c12(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, from(z0))) -> c6(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c6(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(x0, s(z0))) -> c11(A__FIRST(mark(x0), s(mark(z0))), MARK(s(z0))) MARK(first(x0, 0)) -> c11(A__FIRST(mark(x0), 0), MARK(0)) MARK(first(x0, nil)) -> c11(A__FIRST(mark(x0), nil), MARK(nil)) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(cons(z0, z1), x1)) -> c11(A__FIRST(cons(mark(z0), z1), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(0, x1)) -> c11(A__FIRST(0, mark(x1)), MARK(x1)) MARK(first(nil, x1)) -> c11(A__FIRST(nil, mark(x1)), MARK(x1)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c12(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, from(z0))) -> c6(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c6(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(x0, s(z0))) -> c11(A__FIRST(mark(x0), s(mark(z0))), MARK(s(z0))) MARK(first(x0, 0)) -> c11(A__FIRST(mark(x0), 0), MARK(0)) MARK(first(x0, nil)) -> c11(A__FIRST(mark(x0), nil), MARK(nil)) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(cons(z0, z1), x1)) -> c11(A__FIRST(cons(mark(z0), z1), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(0, x1)) -> c11(A__FIRST(0, mark(x1)), MARK(x1)) MARK(first(nil, x1)) -> c11(A__FIRST(nil, mark(x1)), MARK(x1)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c12_2, c13_2, c14_1, c15_1, c6_2, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2 ---------------------------------------- (83) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing nodes: MARK(first(x0, nil)) -> c11(A__FIRST(mark(x0), nil), MARK(nil)) MARK(first(x0, 0)) -> c11(A__FIRST(mark(x0), 0), MARK(0)) ---------------------------------------- (84) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c12(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, from(z0))) -> c6(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c6(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(x0, s(z0))) -> c11(A__FIRST(mark(x0), s(mark(z0))), MARK(s(z0))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(cons(z0, z1), x1)) -> c11(A__FIRST(cons(mark(z0), z1), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(0, x1)) -> c11(A__FIRST(0, mark(x1)), MARK(x1)) MARK(first(nil, x1)) -> c11(A__FIRST(nil, mark(x1)), MARK(x1)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c12(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, from(z0))) -> c6(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c6(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(x0, s(z0))) -> c11(A__FIRST(mark(x0), s(mark(z0))), MARK(s(z0))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(cons(z0, z1), x1)) -> c11(A__FIRST(cons(mark(z0), z1), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(0, x1)) -> c11(A__FIRST(0, mark(x1)), MARK(x1)) MARK(first(nil, x1)) -> c11(A__FIRST(nil, mark(x1)), MARK(x1)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c12_2, c13_2, c14_1, c15_1, c6_2, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2 ---------------------------------------- (85) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 4 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__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c12(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, from(z0))) -> c6(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c6(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c12(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, from(z0))) -> c6(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c6(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c12_2, c13_2, c14_1, c15_1, c6_2, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1 ---------------------------------------- (87) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(sel(z0, z1)) -> c12(A__SEL(mark(z0), mark(z1)), MARK(z0)) by MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(x0, s(z0))) -> c12(A__SEL(mark(x0), s(mark(z0))), MARK(x0)) MARK(sel(x0, 0)) -> c12(A__SEL(mark(x0), 0), MARK(x0)) MARK(sel(x0, nil)) -> c12(A__SEL(mark(x0), nil), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(cons(z0, z1), x1)) -> c12(A__SEL(cons(mark(z0), z1), mark(x1)), MARK(cons(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1)), MARK(0)) MARK(sel(nil, x1)) -> c12(A__SEL(nil, mark(x1)), MARK(nil)) ---------------------------------------- (88) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, from(z0))) -> c6(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c6(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(x0, s(z0))) -> c12(A__SEL(mark(x0), s(mark(z0))), MARK(x0)) MARK(sel(x0, 0)) -> c12(A__SEL(mark(x0), 0), MARK(x0)) MARK(sel(x0, nil)) -> c12(A__SEL(mark(x0), nil), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(cons(z0, z1), x1)) -> c12(A__SEL(cons(mark(z0), z1), mark(x1)), MARK(cons(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1)), MARK(0)) MARK(sel(nil, x1)) -> c12(A__SEL(nil, mark(x1)), MARK(nil)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, from(z0))) -> c6(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c6(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(x0, s(z0))) -> c12(A__SEL(mark(x0), s(mark(z0))), MARK(x0)) MARK(sel(x0, 0)) -> c12(A__SEL(mark(x0), 0), MARK(x0)) MARK(sel(x0, nil)) -> c12(A__SEL(mark(x0), nil), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(cons(z0, z1), x1)) -> c12(A__SEL(cons(mark(z0), z1), mark(x1)), MARK(cons(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1)), MARK(0)) MARK(sel(nil, x1)) -> c12(A__SEL(nil, mark(x1)), MARK(nil)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c13_2, c14_1, c15_1, c6_2, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2 ---------------------------------------- (89) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing nodes: MARK(sel(nil, x1)) -> c12(A__SEL(nil, mark(x1)), MARK(nil)) ---------------------------------------- (90) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, from(z0))) -> c6(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c6(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(x0, s(z0))) -> c12(A__SEL(mark(x0), s(mark(z0))), MARK(x0)) MARK(sel(x0, 0)) -> c12(A__SEL(mark(x0), 0), MARK(x0)) MARK(sel(x0, nil)) -> c12(A__SEL(mark(x0), nil), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(cons(z0, z1), x1)) -> c12(A__SEL(cons(mark(z0), z1), mark(x1)), MARK(cons(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1)), MARK(0)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, from(z0))) -> c6(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c6(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(x0, s(z0))) -> c12(A__SEL(mark(x0), s(mark(z0))), MARK(x0)) MARK(sel(x0, 0)) -> c12(A__SEL(mark(x0), 0), MARK(x0)) MARK(sel(x0, nil)) -> c12(A__SEL(mark(x0), nil), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(cons(z0, z1), x1)) -> c12(A__SEL(cons(mark(z0), z1), mark(x1)), MARK(cons(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1)), MARK(0)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c13_2, c14_1, c15_1, c6_2, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2 ---------------------------------------- (91) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 5 trailing tuple parts ---------------------------------------- (92) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, from(z0))) -> c6(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c6(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, from(z0))) -> c6(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c6(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c13_2, c14_1, c15_1, c6_2, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1 ---------------------------------------- (93) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(sel(z0, z1)) -> c13(A__SEL(mark(z0), mark(z1)), MARK(z1)) by MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(x0, s(z0))) -> c13(A__SEL(mark(x0), s(mark(z0))), MARK(s(z0))) MARK(sel(x0, 0)) -> c13(A__SEL(mark(x0), 0), MARK(0)) MARK(sel(x0, nil)) -> c13(A__SEL(mark(x0), nil), MARK(nil)) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(cons(z0, z1), x1)) -> c13(A__SEL(cons(mark(z0), z1), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(nil, x1)) -> c13(A__SEL(nil, mark(x1)), MARK(x1)) ---------------------------------------- (94) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, from(z0))) -> c6(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c6(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(x0, s(z0))) -> c13(A__SEL(mark(x0), s(mark(z0))), MARK(s(z0))) MARK(sel(x0, 0)) -> c13(A__SEL(mark(x0), 0), MARK(0)) MARK(sel(x0, nil)) -> c13(A__SEL(mark(x0), nil), MARK(nil)) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(cons(z0, z1), x1)) -> c13(A__SEL(cons(mark(z0), z1), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(nil, x1)) -> c13(A__SEL(nil, mark(x1)), MARK(x1)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, from(z0))) -> c6(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c6(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(x0, s(z0))) -> c13(A__SEL(mark(x0), s(mark(z0))), MARK(s(z0))) MARK(sel(x0, 0)) -> c13(A__SEL(mark(x0), 0), MARK(0)) MARK(sel(x0, nil)) -> c13(A__SEL(mark(x0), nil), MARK(nil)) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(cons(z0, z1), x1)) -> c13(A__SEL(cons(mark(z0), z1), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(nil, x1)) -> c13(A__SEL(nil, mark(x1)), MARK(x1)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_2, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2 ---------------------------------------- (95) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing nodes: MARK(sel(x0, 0)) -> c13(A__SEL(mark(x0), 0), MARK(0)) MARK(sel(x0, nil)) -> c13(A__SEL(mark(x0), nil), MARK(nil)) ---------------------------------------- (96) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, from(z0))) -> c6(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c6(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(x0, s(z0))) -> c13(A__SEL(mark(x0), s(mark(z0))), MARK(s(z0))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(cons(z0, z1), x1)) -> c13(A__SEL(cons(mark(z0), z1), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(nil, x1)) -> c13(A__SEL(nil, mark(x1)), MARK(x1)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, from(z0))) -> c6(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c6(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(x0, s(z0))) -> c13(A__SEL(mark(x0), s(mark(z0))), MARK(s(z0))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(cons(z0, z1), x1)) -> c13(A__SEL(cons(mark(z0), z1), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(nil, x1)) -> c13(A__SEL(nil, mark(x1)), MARK(x1)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_2, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2 ---------------------------------------- (97) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 3 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__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, from(z0))) -> c6(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c6(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, from(z0))) -> c6(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c6(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_2, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1 ---------------------------------------- (99) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__SEL(s(x0), cons(x1, from(z0))) -> c6(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) by A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), from(mark(x2))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(cons(mark(z0), z1), a__from(mark(x2))), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2))), MARK(0)) A__SEL(s(nil), cons(x1, from(x2))) -> c6(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__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c6(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), from(mark(x2))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(cons(mark(z0), z1), a__from(mark(x2))), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2))), MARK(0)) A__SEL(s(nil), cons(x1, from(x2))) -> c6(A__SEL(nil, a__from(mark(x2))), MARK(nil)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c6(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), from(mark(x2))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(cons(mark(z0), z1), a__from(mark(x2))), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2))), MARK(0)) A__SEL(s(nil), cons(x1, from(x2))) -> c6(A__SEL(nil, a__from(mark(x2))), MARK(nil)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_2, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1 ---------------------------------------- (101) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing nodes: A__SEL(s(nil), cons(x1, from(x2))) -> c6(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__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c6(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), from(mark(x2))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(cons(mark(z0), z1), a__from(mark(x2))), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2))), MARK(0)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c6(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), from(mark(x2))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(cons(mark(z0), z1), a__from(mark(x2))), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2))), MARK(0)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_2, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_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__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c6(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c6(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_2, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1 ---------------------------------------- (105) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__SEL(s(x0), cons(x1, first(z0, z1))) -> c6(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) by A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(A__SEL(mark(x0), first(mark(x2), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(cons(mark(z0), z1), a__first(mark(x2), mark(x3))), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(0)) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c6(A__SEL(nil, a__first(mark(x2), mark(x3))), MARK(nil)) ---------------------------------------- (106) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(A__SEL(mark(x0), first(mark(x2), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(cons(mark(z0), z1), a__first(mark(x2), mark(x3))), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(0)) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c6(A__SEL(nil, a__first(mark(x2), mark(x3))), MARK(nil)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(A__SEL(mark(x0), first(mark(x2), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(cons(mark(z0), z1), a__first(mark(x2), mark(x3))), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(0)) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c6(A__SEL(nil, a__first(mark(x2), mark(x3))), MARK(nil)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_2, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1 ---------------------------------------- (107) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing nodes: A__SEL(s(nil), cons(x1, first(x2, x3))) -> c6(A__SEL(nil, a__first(mark(x2), mark(x3))), MARK(nil)) ---------------------------------------- (108) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(A__SEL(mark(x0), first(mark(x2), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(cons(mark(z0), z1), a__first(mark(x2), mark(x3))), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(0)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(A__SEL(mark(x0), first(mark(x2), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(cons(mark(z0), z1), a__first(mark(x2), mark(x3))), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(0)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_2, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_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__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_2, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1 ---------------------------------------- (111) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c6(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) by A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(A__SEL(mark(x0), sel(mark(x2), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(0)) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c6(A__SEL(nil, a__sel(mark(x2), mark(x3))), MARK(nil)) ---------------------------------------- (112) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(A__SEL(mark(x0), sel(mark(x2), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(0)) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c6(A__SEL(nil, a__sel(mark(x2), mark(x3))), MARK(nil)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(A__SEL(mark(x0), sel(mark(x2), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(0)) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c6(A__SEL(nil, a__sel(mark(x2), mark(x3))), MARK(nil)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_2, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1 ---------------------------------------- (113) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing nodes: A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c6(A__SEL(nil, a__sel(mark(x2), mark(x3))), MARK(nil)) ---------------------------------------- (114) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(A__SEL(mark(x0), sel(mark(x2), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(0)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(A__SEL(mark(x0), sel(mark(x2), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(0)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_2, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_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__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_2, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1 ---------------------------------------- (117) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c6(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) by A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(cons(mark(z0), z1), cons(mark(x2), x3)), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3)), MARK(0)) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c6(A__SEL(nil, cons(mark(x2), 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__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(cons(mark(z0), z1), cons(mark(x2), x3)), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3)), MARK(0)) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c6(A__SEL(nil, cons(mark(x2), x3)), MARK(nil)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(cons(mark(z0), z1), cons(mark(x2), x3)), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3)), MARK(0)) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c6(A__SEL(nil, cons(mark(x2), x3)), MARK(nil)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_2, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1 ---------------------------------------- (119) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing nodes: A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c6(A__SEL(nil, cons(mark(x2), 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__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(cons(mark(z0), z1), cons(mark(x2), x3)), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3)), MARK(0)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(cons(mark(z0), z1), cons(mark(x2), x3)), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3)), MARK(0)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_2, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1 ---------------------------------------- (121) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 2 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__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_2, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1 ---------------------------------------- (123) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__SEL(s(from(z0)), cons(x1, x2)) -> c6(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) by A__SEL(s(from(x0)), cons(x1, from(z0))) -> c6(A__SEL(a__from(mark(x0)), a__from(mark(z0))), MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, first(z0, z1))) -> c6(A__SEL(a__from(mark(x0)), a__first(mark(z0), mark(z1))), MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, sel(z0, z1))) -> c6(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))) -> c6(A__SEL(a__from(mark(x0)), cons(mark(z0), z1)), MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(A__SEL(a__from(mark(x0)), s(mark(z0))), MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(A__SEL(a__from(mark(x0)), 0), MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(A__SEL(a__from(mark(x0)), nil), MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(A__SEL(cons(mark(mark(x0)), from(s(mark(x0)))), mark(x2)), MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(A__SEL(from(mark(x0)), mark(x2)), MARK(from(x0))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) ---------------------------------------- (124) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(A__SEL(a__from(mark(x0)), s(mark(z0))), MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(A__SEL(a__from(mark(x0)), 0), MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(A__SEL(a__from(mark(x0)), nil), MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(A__SEL(cons(mark(mark(x0)), from(s(mark(x0)))), mark(x2)), MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(A__SEL(from(mark(x0)), mark(x2)), MARK(from(x0))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(A__SEL(a__from(mark(x0)), s(mark(z0))), MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(A__SEL(a__from(mark(x0)), 0), MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(A__SEL(a__from(mark(x0)), nil), MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(A__SEL(cons(mark(mark(x0)), from(s(mark(x0)))), mark(x2)), MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(A__SEL(from(mark(x0)), mark(x2)), MARK(from(x0))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_2, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1 ---------------------------------------- (125) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 5 trailing tuple parts ---------------------------------------- (126) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_2, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1 ---------------------------------------- (127) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(first(z0, z1))) by A__SEL(s(first(x0, x1)), cons(x2, from(z0))) -> c6(A__SEL(a__first(mark(x0), mark(x1)), a__from(mark(z0))), MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, first(z0, z1))) -> c6(A__SEL(a__first(mark(x0), mark(x1)), a__first(mark(z0), mark(z1))), MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, sel(z0, z1))) -> c6(A__SEL(a__first(mark(x0), mark(x1)), a__sel(mark(z0), mark(z1))), MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, cons(z0, z1))) -> c6(A__SEL(a__first(mark(x0), mark(x1)), cons(mark(z0), z1)), MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(A__SEL(a__first(mark(x0), mark(x1)), s(mark(z0))), MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(A__SEL(a__first(mark(x0), mark(x1)), 0), MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(A__SEL(a__first(mark(x0), mark(x1)), nil), MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(A__SEL(first(mark(x0), mark(x1)), mark(x3)), MARK(first(x0, x1))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) ---------------------------------------- (128) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(A__SEL(a__first(mark(x0), mark(x1)), s(mark(z0))), MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(A__SEL(a__first(mark(x0), mark(x1)), 0), MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(A__SEL(a__first(mark(x0), mark(x1)), nil), MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(A__SEL(first(mark(x0), mark(x1)), mark(x3)), MARK(first(x0, x1))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(A__SEL(a__first(mark(x0), mark(x1)), s(mark(z0))), MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(A__SEL(a__first(mark(x0), mark(x1)), 0), MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(A__SEL(a__first(mark(x0), mark(x1)), nil), MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(A__SEL(first(mark(x0), mark(x1)), mark(x3)), MARK(first(x0, x1))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_2, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1 ---------------------------------------- (129) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 4 trailing tuple parts ---------------------------------------- (130) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_2, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1 ---------------------------------------- (131) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c6(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))) -> c6(A__SEL(a__sel(mark(x0), mark(x1)), a__from(mark(z0))), MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, first(z0, z1))) -> c6(A__SEL(a__sel(mark(x0), mark(x1)), a__first(mark(z0), mark(z1))), MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, sel(z0, z1))) -> c6(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))) -> c6(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))) -> c6(A__SEL(a__sel(mark(x0), mark(x1)), s(mark(z0))), MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(A__SEL(a__sel(mark(x0), mark(x1)), 0), MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(A__SEL(a__sel(mark(x0), mark(x1)), nil), MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(A__SEL(sel(mark(x0), mark(x1)), mark(x3)), MARK(sel(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) ---------------------------------------- (132) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(A__SEL(a__sel(mark(x0), mark(x1)), s(mark(z0))), MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(A__SEL(a__sel(mark(x0), mark(x1)), 0), MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(A__SEL(a__sel(mark(x0), mark(x1)), nil), MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(A__SEL(sel(mark(x0), mark(x1)), mark(x3)), MARK(sel(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(A__SEL(a__sel(mark(x0), mark(x1)), s(mark(z0))), MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(A__SEL(a__sel(mark(x0), mark(x1)), 0), MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(A__SEL(a__sel(mark(x0), mark(x1)), nil), MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(A__SEL(sel(mark(x0), mark(x1)), mark(x3)), MARK(sel(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_2, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1 ---------------------------------------- (133) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 4 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__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_2, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1 ---------------------------------------- (135) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__SEL(s(s(z0)), cons(x1, x2)) -> c6(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) by A__SEL(s(s(x0)), cons(x1, from(z0))) -> c6(A__SEL(s(mark(x0)), a__from(mark(z0))), MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, first(z0, z1))) -> c6(A__SEL(s(mark(x0)), a__first(mark(z0), mark(z1))), MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, sel(z0, z1))) -> c6(A__SEL(s(mark(x0)), a__sel(mark(z0), mark(z1))), MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, cons(z0, z1))) -> c6(A__SEL(s(mark(x0)), cons(mark(z0), z1)), MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(A__SEL(s(mark(x0)), s(mark(z0))), MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(A__SEL(s(mark(x0)), 0), MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(A__SEL(s(mark(x0)), nil), MARK(s(x0))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) ---------------------------------------- (136) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(A__SEL(s(mark(x0)), s(mark(z0))), MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(A__SEL(s(mark(x0)), 0), MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(A__SEL(s(mark(x0)), nil), MARK(s(x0))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(A__SEL(s(mark(x0)), s(mark(z0))), MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(A__SEL(s(mark(x0)), 0), MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(A__SEL(s(mark(x0)), nil), MARK(s(x0))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2 ---------------------------------------- (137) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 3 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__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2 ---------------------------------------- (139) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__SEL(s(0), cons(x1, x2)) -> c6(A__SEL(0, mark(x2))) by A__SEL(s(0), cons(x0, from(z0))) -> c6(A__SEL(0, a__from(mark(z0)))) A__SEL(s(0), cons(x0, first(z0, z1))) -> c6(A__SEL(0, a__first(mark(z0), mark(z1)))) A__SEL(s(0), cons(x0, sel(z0, z1))) -> c6(A__SEL(0, a__sel(mark(z0), mark(z1)))) A__SEL(s(0), cons(x0, cons(z0, z1))) -> c6(A__SEL(0, cons(mark(z0), z1))) A__SEL(s(0), cons(x0, s(z0))) -> c6(A__SEL(0, s(mark(z0)))) A__SEL(s(0), cons(x0, 0)) -> c6(A__SEL(0, 0)) A__SEL(s(0), cons(x0, nil)) -> c6(A__SEL(0, nil)) ---------------------------------------- (140) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(0), cons(x0, s(z0))) -> c6(A__SEL(0, s(mark(z0)))) A__SEL(s(0), cons(x0, 0)) -> c6(A__SEL(0, 0)) A__SEL(s(0), cons(x0, nil)) -> c6(A__SEL(0, nil)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(0), cons(x0, s(z0))) -> c6(A__SEL(0, s(mark(z0)))) A__SEL(s(0), cons(x0, 0)) -> c6(A__SEL(0, 0)) A__SEL(s(0), cons(x0, nil)) -> c6(A__SEL(0, nil)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2 ---------------------------------------- (141) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 3 trailing nodes: A__SEL(s(0), cons(x0, nil)) -> c6(A__SEL(0, nil)) A__SEL(s(0), cons(x0, 0)) -> c6(A__SEL(0, 0)) A__SEL(s(0), cons(x0, s(z0))) -> c6(A__SEL(0, s(mark(z0)))) ---------------------------------------- (142) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2 ---------------------------------------- (143) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__SEL(s(x0), cons(x1, from(z0))) -> c7(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) by A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(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))) -> c7(A__SEL(cons(mark(z0), z1), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(A__SEL(nil, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) ---------------------------------------- (144) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(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))) -> c7(A__SEL(cons(mark(z0), z1), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(A__SEL(nil, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(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))) -> c7(A__SEL(cons(mark(z0), z1), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(A__SEL(nil, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2 ---------------------------------------- (145) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 3 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__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2 ---------------------------------------- (147) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__SEL(s(x0), cons(x1, first(z0, z1))) -> c7(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) by A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(A__SEL(mark(x0), first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(cons(mark(z0), z1), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(A__SEL(nil, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) ---------------------------------------- (148) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(A__SEL(mark(x0), first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(cons(mark(z0), z1), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(A__SEL(nil, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(A__SEL(mark(x0), first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(cons(mark(z0), z1), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(A__SEL(nil, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2 ---------------------------------------- (149) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 3 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__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2 ---------------------------------------- (151) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c7(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) by A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(A__SEL(mark(x0), sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(A__SEL(nil, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) ---------------------------------------- (152) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(A__SEL(mark(x0), sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(A__SEL(nil, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(A__SEL(mark(x0), sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(A__SEL(nil, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2 ---------------------------------------- (153) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 3 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__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2 ---------------------------------------- (155) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c7(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) by A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(cons(mark(z0), z1), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(A__SEL(nil, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) ---------------------------------------- (156) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(cons(mark(z0), z1), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(A__SEL(nil, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(cons(mark(z0), z1), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(A__SEL(nil, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2 ---------------------------------------- (157) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 2 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__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2 ---------------------------------------- (159) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__SEL(s(from(z0)), cons(x1, x2)) -> c7(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) by A__SEL(s(from(x0)), cons(x1, from(z0))) -> c7(A__SEL(a__from(mark(x0)), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(from(x0)), cons(x1, first(z0, z1))) -> c7(A__SEL(a__from(mark(x0)), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(from(x0)), cons(x1, sel(z0, z1))) -> c7(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))) -> c7(A__SEL(a__from(mark(x0)), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(A__SEL(a__from(mark(x0)), s(mark(z0))), MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c7(A__SEL(a__from(mark(x0)), 0), MARK(0)) A__SEL(s(from(x0)), cons(x1, nil)) -> c7(A__SEL(a__from(mark(x0)), nil), MARK(nil)) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(A__SEL(cons(mark(mark(x0)), from(s(mark(x0)))), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(A__SEL(from(mark(x0)), mark(x2)), MARK(x2)) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) ---------------------------------------- (160) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(A__SEL(a__from(mark(x0)), s(mark(z0))), MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c7(A__SEL(a__from(mark(x0)), 0), MARK(0)) A__SEL(s(from(x0)), cons(x1, nil)) -> c7(A__SEL(a__from(mark(x0)), nil), MARK(nil)) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(A__SEL(cons(mark(mark(x0)), from(s(mark(x0)))), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(A__SEL(from(mark(x0)), mark(x2)), MARK(x2)) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(A__SEL(a__from(mark(x0)), s(mark(z0))), MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c7(A__SEL(a__from(mark(x0)), 0), MARK(0)) A__SEL(s(from(x0)), cons(x1, nil)) -> c7(A__SEL(a__from(mark(x0)), nil), MARK(nil)) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(A__SEL(cons(mark(mark(x0)), from(s(mark(x0)))), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(A__SEL(from(mark(x0)), mark(x2)), MARK(x2)) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2 ---------------------------------------- (161) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing nodes: A__SEL(s(from(x0)), cons(x1, 0)) -> c7(A__SEL(a__from(mark(x0)), 0), MARK(0)) A__SEL(s(from(x0)), cons(x1, nil)) -> c7(A__SEL(a__from(mark(x0)), nil), MARK(nil)) ---------------------------------------- (162) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(A__SEL(a__from(mark(x0)), s(mark(z0))), MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(A__SEL(cons(mark(mark(x0)), from(s(mark(x0)))), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(A__SEL(from(mark(x0)), mark(x2)), MARK(x2)) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(A__SEL(a__from(mark(x0)), s(mark(z0))), MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(A__SEL(cons(mark(mark(x0)), from(s(mark(x0)))), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(A__SEL(from(mark(x0)), mark(x2)), MARK(x2)) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2 ---------------------------------------- (163) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 3 trailing tuple parts ---------------------------------------- (164) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2 ---------------------------------------- (165) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__SEL(s(first(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__first(mark(z0), mark(z1)), mark(x2)), MARK(x2)) by A__SEL(s(first(x0, x1)), cons(x2, from(z0))) -> c7(A__SEL(a__first(mark(x0), mark(x1)), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(first(x0, x1)), cons(x2, first(z0, z1))) -> c7(A__SEL(a__first(mark(x0), mark(x1)), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(first(x0, x1)), cons(x2, sel(z0, z1))) -> c7(A__SEL(a__first(mark(x0), mark(x1)), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(first(x0, x1)), cons(x2, cons(z0, z1))) -> c7(A__SEL(a__first(mark(x0), mark(x1)), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(A__SEL(a__first(mark(x0), mark(x1)), s(mark(z0))), MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c7(A__SEL(a__first(mark(x0), mark(x1)), 0), MARK(0)) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c7(A__SEL(a__first(mark(x0), mark(x1)), nil), MARK(nil)) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(A__SEL(first(mark(x0), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) ---------------------------------------- (166) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(A__SEL(a__first(mark(x0), mark(x1)), s(mark(z0))), MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c7(A__SEL(a__first(mark(x0), mark(x1)), 0), MARK(0)) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c7(A__SEL(a__first(mark(x0), mark(x1)), nil), MARK(nil)) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(A__SEL(first(mark(x0), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(A__SEL(a__first(mark(x0), mark(x1)), s(mark(z0))), MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c7(A__SEL(a__first(mark(x0), mark(x1)), 0), MARK(0)) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c7(A__SEL(a__first(mark(x0), mark(x1)), nil), MARK(nil)) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(A__SEL(first(mark(x0), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2 ---------------------------------------- (167) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing nodes: A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c7(A__SEL(a__first(mark(x0), mark(x1)), nil), MARK(nil)) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c7(A__SEL(a__first(mark(x0), mark(x1)), 0), MARK(0)) ---------------------------------------- (168) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(A__SEL(a__first(mark(x0), mark(x1)), s(mark(z0))), MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(A__SEL(first(mark(x0), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(A__SEL(a__first(mark(x0), mark(x1)), s(mark(z0))), MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(A__SEL(first(mark(x0), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2 ---------------------------------------- (169) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 2 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__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2 ---------------------------------------- (171) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) by A__SEL(s(sel(x0, x1)), cons(x2, from(z0))) -> c7(A__SEL(a__sel(mark(x0), mark(x1)), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(sel(x0, x1)), cons(x2, first(z0, z1))) -> c7(A__SEL(a__sel(mark(x0), mark(x1)), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(sel(x0, x1)), cons(x2, sel(z0, z1))) -> c7(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))) -> c7(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))) -> c7(A__SEL(a__sel(mark(x0), mark(x1)), s(mark(z0))), MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c7(A__SEL(a__sel(mark(x0), mark(x1)), 0), MARK(0)) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c7(A__SEL(a__sel(mark(x0), mark(x1)), nil), MARK(nil)) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(A__SEL(sel(mark(x0), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) ---------------------------------------- (172) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(A__SEL(a__sel(mark(x0), mark(x1)), s(mark(z0))), MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c7(A__SEL(a__sel(mark(x0), mark(x1)), 0), MARK(0)) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c7(A__SEL(a__sel(mark(x0), mark(x1)), nil), MARK(nil)) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(A__SEL(sel(mark(x0), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(A__SEL(a__sel(mark(x0), mark(x1)), s(mark(z0))), MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c7(A__SEL(a__sel(mark(x0), mark(x1)), 0), MARK(0)) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c7(A__SEL(a__sel(mark(x0), mark(x1)), nil), MARK(nil)) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(A__SEL(sel(mark(x0), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2 ---------------------------------------- (173) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing nodes: A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c7(A__SEL(a__sel(mark(x0), mark(x1)), nil), MARK(nil)) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c7(A__SEL(a__sel(mark(x0), mark(x1)), 0), MARK(0)) ---------------------------------------- (174) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(A__SEL(a__sel(mark(x0), mark(x1)), s(mark(z0))), MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(A__SEL(sel(mark(x0), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(A__SEL(a__sel(mark(x0), mark(x1)), s(mark(z0))), MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(A__SEL(sel(mark(x0), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2 ---------------------------------------- (175) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing tuple parts ---------------------------------------- (176) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2 ---------------------------------------- (177) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__SEL(s(s(z0)), cons(x1, x2)) -> c7(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) by A__SEL(s(s(x0)), cons(x1, from(z0))) -> c7(A__SEL(s(mark(x0)), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(s(x0)), cons(x1, first(z0, z1))) -> c7(A__SEL(s(mark(x0)), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(s(x0)), cons(x1, sel(z0, z1))) -> c7(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))) -> c7(A__SEL(s(mark(x0)), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(A__SEL(s(mark(x0)), s(mark(z0))), MARK(s(z0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c7(A__SEL(s(mark(x0)), 0), MARK(0)) A__SEL(s(s(x0)), cons(x1, nil)) -> c7(A__SEL(s(mark(x0)), nil), MARK(nil)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) ---------------------------------------- (178) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(A__SEL(s(mark(x0)), s(mark(z0))), MARK(s(z0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c7(A__SEL(s(mark(x0)), 0), MARK(0)) A__SEL(s(s(x0)), cons(x1, nil)) -> c7(A__SEL(s(mark(x0)), nil), MARK(nil)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(A__SEL(s(mark(x0)), s(mark(z0))), MARK(s(z0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c7(A__SEL(s(mark(x0)), 0), MARK(0)) A__SEL(s(s(x0)), cons(x1, nil)) -> c7(A__SEL(s(mark(x0)), nil), MARK(nil)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2 ---------------------------------------- (179) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing nodes: A__SEL(s(s(x0)), cons(x1, nil)) -> c7(A__SEL(s(mark(x0)), nil), MARK(nil)) A__SEL(s(s(x0)), cons(x1, 0)) -> c7(A__SEL(s(mark(x0)), 0), MARK(0)) ---------------------------------------- (180) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(A__SEL(s(mark(x0)), s(mark(z0))), MARK(s(z0))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(A__SEL(s(mark(x0)), s(mark(z0))), MARK(s(z0))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2 ---------------------------------------- (181) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 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__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_2, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2 ---------------------------------------- (183) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__SEL(s(0), cons(x1, x2)) -> c7(A__SEL(0, mark(x2)), MARK(x2)) by A__SEL(s(0), cons(x0, from(z0))) -> c7(A__SEL(0, a__from(mark(z0))), MARK(from(z0))) A__SEL(s(0), cons(x0, first(z0, z1))) -> c7(A__SEL(0, a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) A__SEL(s(0), cons(x0, sel(z0, z1))) -> c7(A__SEL(0, a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(0), cons(x0, cons(z0, z1))) -> c7(A__SEL(0, cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(0), cons(x0, s(z0))) -> c7(A__SEL(0, s(mark(z0))), MARK(s(z0))) A__SEL(s(0), cons(x0, 0)) -> c7(A__SEL(0, 0), MARK(0)) A__SEL(s(0), cons(x0, nil)) -> c7(A__SEL(0, nil), MARK(nil)) ---------------------------------------- (184) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(A__SEL(0, s(mark(z0))), MARK(s(z0))) A__SEL(s(0), cons(x0, 0)) -> c7(A__SEL(0, 0), MARK(0)) A__SEL(s(0), cons(x0, nil)) -> c7(A__SEL(0, nil), MARK(nil)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(A__SEL(0, s(mark(z0))), MARK(s(z0))) A__SEL(s(0), cons(x0, 0)) -> c7(A__SEL(0, 0), MARK(0)) A__SEL(s(0), cons(x0, nil)) -> c7(A__SEL(0, nil), MARK(nil)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2 ---------------------------------------- (185) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing nodes: A__SEL(s(0), cons(x0, 0)) -> c7(A__SEL(0, 0), MARK(0)) A__SEL(s(0), cons(x0, nil)) -> c7(A__SEL(0, nil), MARK(nil)) ---------------------------------------- (186) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(A__SEL(0, s(mark(z0))), MARK(s(z0))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(A__SEL(0, s(mark(z0))), MARK(s(z0))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2 ---------------------------------------- (187) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (188) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2 ---------------------------------------- (189) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(first(x0, from(z0))) -> c10(A__FIRST(mark(x0), a__from(mark(z0))), MARK(x0)) by MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), from(mark(x1))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(cons(z0, z1), from(x1))) -> c10(A__FIRST(cons(mark(z0), z1), a__from(mark(x1))), MARK(cons(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(0, from(x1))) -> c10(A__FIRST(0, a__from(mark(x1))), MARK(0)) MARK(first(nil, from(x1))) -> c10(A__FIRST(nil, a__from(mark(x1))), MARK(nil)) ---------------------------------------- (190) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), from(mark(x1))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(cons(z0, z1), from(x1))) -> c10(A__FIRST(cons(mark(z0), z1), a__from(mark(x1))), MARK(cons(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(0, from(x1))) -> c10(A__FIRST(0, a__from(mark(x1))), MARK(0)) MARK(first(nil, from(x1))) -> c10(A__FIRST(nil, a__from(mark(x1))), MARK(nil)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), from(mark(x1))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(cons(z0, z1), from(x1))) -> c10(A__FIRST(cons(mark(z0), z1), a__from(mark(x1))), MARK(cons(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(0, from(x1))) -> c10(A__FIRST(0, a__from(mark(x1))), MARK(0)) MARK(first(nil, from(x1))) -> c10(A__FIRST(nil, a__from(mark(x1))), MARK(nil)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2 ---------------------------------------- (191) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing nodes: MARK(first(nil, from(x1))) -> c10(A__FIRST(nil, a__from(mark(x1))), MARK(nil)) MARK(first(0, from(x1))) -> c10(A__FIRST(0, a__from(mark(x1))), MARK(0)) ---------------------------------------- (192) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), from(mark(x1))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(cons(z0, z1), from(x1))) -> c10(A__FIRST(cons(mark(z0), z1), a__from(mark(x1))), MARK(cons(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), from(mark(x1))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(cons(z0, z1), from(x1))) -> c10(A__FIRST(cons(mark(z0), z1), a__from(mark(x1))), MARK(cons(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2 ---------------------------------------- (193) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing tuple parts ---------------------------------------- (194) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2 ---------------------------------------- (195) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(first(x0, first(z0, z1))) -> c10(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) by MARK(first(x0, first(x1, x2))) -> c10(A__FIRST(mark(x0), first(mark(x1), mark(x2))), MARK(x0)) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(A__FIRST(cons(mark(z0), z1), a__first(mark(x1), mark(x2))), MARK(cons(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(0, first(x1, x2))) -> c10(A__FIRST(0, a__first(mark(x1), mark(x2))), MARK(0)) MARK(first(nil, first(x1, x2))) -> c10(A__FIRST(nil, a__first(mark(x1), mark(x2))), MARK(nil)) ---------------------------------------- (196) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, x2))) -> c10(A__FIRST(mark(x0), first(mark(x1), mark(x2))), MARK(x0)) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(A__FIRST(cons(mark(z0), z1), a__first(mark(x1), mark(x2))), MARK(cons(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(0, first(x1, x2))) -> c10(A__FIRST(0, a__first(mark(x1), mark(x2))), MARK(0)) MARK(first(nil, first(x1, x2))) -> c10(A__FIRST(nil, a__first(mark(x1), mark(x2))), MARK(nil)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, x2))) -> c10(A__FIRST(mark(x0), first(mark(x1), mark(x2))), MARK(x0)) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(A__FIRST(cons(mark(z0), z1), a__first(mark(x1), mark(x2))), MARK(cons(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(0, first(x1, x2))) -> c10(A__FIRST(0, a__first(mark(x1), mark(x2))), MARK(0)) MARK(first(nil, first(x1, x2))) -> c10(A__FIRST(nil, a__first(mark(x1), mark(x2))), MARK(nil)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2 ---------------------------------------- (197) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing nodes: MARK(first(0, first(x1, x2))) -> c10(A__FIRST(0, a__first(mark(x1), mark(x2))), MARK(0)) MARK(first(nil, first(x1, x2))) -> c10(A__FIRST(nil, a__first(mark(x1), mark(x2))), MARK(nil)) ---------------------------------------- (198) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, x2))) -> c10(A__FIRST(mark(x0), first(mark(x1), mark(x2))), MARK(x0)) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(A__FIRST(cons(mark(z0), z1), a__first(mark(x1), mark(x2))), MARK(cons(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, x2))) -> c10(A__FIRST(mark(x0), first(mark(x1), mark(x2))), MARK(x0)) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(A__FIRST(cons(mark(z0), z1), a__first(mark(x1), mark(x2))), MARK(cons(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2 ---------------------------------------- (199) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing tuple parts ---------------------------------------- (200) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2 ---------------------------------------- (201) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(first(x0, sel(z0, z1))) -> c10(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) by MARK(first(x0, sel(x1, x2))) -> c10(A__FIRST(mark(x0), sel(mark(x1), mark(x2))), MARK(x0)) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(A__FIRST(cons(mark(z0), z1), a__sel(mark(x1), mark(x2))), MARK(cons(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(0, sel(x1, x2))) -> c10(A__FIRST(0, a__sel(mark(x1), mark(x2))), MARK(0)) MARK(first(nil, sel(x1, x2))) -> c10(A__FIRST(nil, a__sel(mark(x1), mark(x2))), MARK(nil)) ---------------------------------------- (202) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, x2))) -> c10(A__FIRST(mark(x0), sel(mark(x1), mark(x2))), MARK(x0)) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(A__FIRST(cons(mark(z0), z1), a__sel(mark(x1), mark(x2))), MARK(cons(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(0, sel(x1, x2))) -> c10(A__FIRST(0, a__sel(mark(x1), mark(x2))), MARK(0)) MARK(first(nil, sel(x1, x2))) -> c10(A__FIRST(nil, a__sel(mark(x1), mark(x2))), MARK(nil)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, x2))) -> c10(A__FIRST(mark(x0), sel(mark(x1), mark(x2))), MARK(x0)) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(A__FIRST(cons(mark(z0), z1), a__sel(mark(x1), mark(x2))), MARK(cons(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(0, sel(x1, x2))) -> c10(A__FIRST(0, a__sel(mark(x1), mark(x2))), MARK(0)) MARK(first(nil, sel(x1, x2))) -> c10(A__FIRST(nil, a__sel(mark(x1), mark(x2))), MARK(nil)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2 ---------------------------------------- (203) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing nodes: MARK(first(nil, sel(x1, x2))) -> c10(A__FIRST(nil, a__sel(mark(x1), mark(x2))), MARK(nil)) MARK(first(0, sel(x1, x2))) -> c10(A__FIRST(0, a__sel(mark(x1), mark(x2))), MARK(0)) ---------------------------------------- (204) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, x2))) -> c10(A__FIRST(mark(x0), sel(mark(x1), mark(x2))), MARK(x0)) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(A__FIRST(cons(mark(z0), z1), a__sel(mark(x1), mark(x2))), MARK(cons(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, x2))) -> c10(A__FIRST(mark(x0), sel(mark(x1), mark(x2))), MARK(x0)) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(A__FIRST(cons(mark(z0), z1), a__sel(mark(x1), mark(x2))), MARK(cons(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2 ---------------------------------------- (205) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing tuple parts ---------------------------------------- (206) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2 ---------------------------------------- (207) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(first(x0, cons(z0, z1))) -> c10(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(x0)) by MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(A__FIRST(cons(mark(z0), z1), cons(mark(x1), x2)), MARK(cons(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(0, cons(x1, x2))) -> c10(A__FIRST(0, cons(mark(x1), x2)), MARK(0)) MARK(first(nil, cons(x1, x2))) -> c10(A__FIRST(nil, cons(mark(x1), x2)), MARK(nil)) ---------------------------------------- (208) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(A__FIRST(cons(mark(z0), z1), cons(mark(x1), x2)), MARK(cons(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(0, cons(x1, x2))) -> c10(A__FIRST(0, cons(mark(x1), x2)), MARK(0)) MARK(first(nil, cons(x1, x2))) -> c10(A__FIRST(nil, cons(mark(x1), x2)), MARK(nil)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(A__FIRST(cons(mark(z0), z1), cons(mark(x1), x2)), MARK(cons(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(0, cons(x1, x2))) -> c10(A__FIRST(0, cons(mark(x1), x2)), MARK(0)) MARK(first(nil, cons(x1, x2))) -> c10(A__FIRST(nil, cons(mark(x1), x2)), MARK(nil)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2 ---------------------------------------- (209) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing nodes: MARK(first(nil, cons(x1, x2))) -> c10(A__FIRST(nil, cons(mark(x1), x2)), MARK(nil)) MARK(first(0, cons(x1, x2))) -> c10(A__FIRST(0, cons(mark(x1), x2)), MARK(0)) ---------------------------------------- (210) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(A__FIRST(cons(mark(z0), z1), cons(mark(x1), x2)), MARK(cons(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(A__FIRST(cons(mark(z0), z1), cons(mark(x1), x2)), MARK(cons(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2 ---------------------------------------- (211) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (212) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2 ---------------------------------------- (213) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(first(from(z0), x1)) -> c10(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(from(z0))) by MARK(first(from(x0), from(z0))) -> c10(A__FIRST(a__from(mark(x0)), a__from(mark(z0))), MARK(from(x0))) MARK(first(from(x0), first(z0, z1))) -> c10(A__FIRST(a__from(mark(x0)), a__first(mark(z0), mark(z1))), MARK(from(x0))) MARK(first(from(x0), sel(z0, z1))) -> c10(A__FIRST(a__from(mark(x0)), a__sel(mark(z0), mark(z1))), MARK(from(x0))) MARK(first(from(x0), cons(z0, z1))) -> c10(A__FIRST(a__from(mark(x0)), cons(mark(z0), z1)), MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(A__FIRST(a__from(mark(x0)), s(mark(z0))), MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(A__FIRST(a__from(mark(x0)), 0), MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(A__FIRST(a__from(mark(x0)), nil), MARK(from(x0))) MARK(first(from(x0), x1)) -> c10(A__FIRST(cons(mark(mark(x0)), from(s(mark(x0)))), mark(x1)), MARK(from(x0))) MARK(first(from(x0), x1)) -> c10(A__FIRST(from(mark(x0)), mark(x1)), MARK(from(x0))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) ---------------------------------------- (214) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(x0), s(z0))) -> c10(A__FIRST(a__from(mark(x0)), s(mark(z0))), MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(A__FIRST(a__from(mark(x0)), 0), MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(A__FIRST(a__from(mark(x0)), nil), MARK(from(x0))) MARK(first(from(x0), x1)) -> c10(A__FIRST(cons(mark(mark(x0)), from(s(mark(x0)))), mark(x1)), MARK(from(x0))) MARK(first(from(x0), x1)) -> c10(A__FIRST(from(mark(x0)), mark(x1)), MARK(from(x0))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(x0), s(z0))) -> c10(A__FIRST(a__from(mark(x0)), s(mark(z0))), MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(A__FIRST(a__from(mark(x0)), 0), MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(A__FIRST(a__from(mark(x0)), nil), MARK(from(x0))) MARK(first(from(x0), x1)) -> c10(A__FIRST(cons(mark(mark(x0)), from(s(mark(x0)))), mark(x1)), MARK(from(x0))) MARK(first(from(x0), x1)) -> c10(A__FIRST(from(mark(x0)), mark(x1)), MARK(from(x0))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2 ---------------------------------------- (215) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 5 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__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2 ---------------------------------------- (217) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(first(first(z0, z1), x1)) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) by MARK(first(first(x0, x1), from(z0))) -> c10(A__FIRST(a__first(mark(x0), mark(x1)), a__from(mark(z0))), MARK(first(x0, x1))) MARK(first(first(x0, x1), first(z0, z1))) -> c10(A__FIRST(a__first(mark(x0), mark(x1)), a__first(mark(z0), mark(z1))), MARK(first(x0, x1))) MARK(first(first(x0, x1), sel(z0, z1))) -> c10(A__FIRST(a__first(mark(x0), mark(x1)), a__sel(mark(z0), mark(z1))), MARK(first(x0, x1))) MARK(first(first(x0, x1), cons(z0, z1))) -> c10(A__FIRST(a__first(mark(x0), mark(x1)), cons(mark(z0), z1)), MARK(first(x0, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(A__FIRST(a__first(mark(x0), mark(x1)), s(mark(z0))), MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(A__FIRST(a__first(mark(x0), mark(x1)), 0), MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(A__FIRST(a__first(mark(x0), mark(x1)), nil), MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(A__FIRST(first(mark(x0), mark(x1)), mark(x2)), MARK(first(x0, x1))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) ---------------------------------------- (218) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, x1), s(z0))) -> c10(A__FIRST(a__first(mark(x0), mark(x1)), s(mark(z0))), MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(A__FIRST(a__first(mark(x0), mark(x1)), 0), MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(A__FIRST(a__first(mark(x0), mark(x1)), nil), MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(A__FIRST(first(mark(x0), mark(x1)), mark(x2)), MARK(first(x0, x1))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, x1), s(z0))) -> c10(A__FIRST(a__first(mark(x0), mark(x1)), s(mark(z0))), MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(A__FIRST(a__first(mark(x0), mark(x1)), 0), MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(A__FIRST(a__first(mark(x0), mark(x1)), nil), MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(A__FIRST(first(mark(x0), mark(x1)), mark(x2)), MARK(first(x0, x1))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2 ---------------------------------------- (219) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 4 trailing tuple parts ---------------------------------------- (220) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2 ---------------------------------------- (221) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(first(sel(z0, z1), x1)) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) by MARK(first(sel(x0, x1), from(z0))) -> c10(A__FIRST(a__sel(mark(x0), mark(x1)), a__from(mark(z0))), MARK(sel(x0, x1))) MARK(first(sel(x0, x1), first(z0, z1))) -> c10(A__FIRST(a__sel(mark(x0), mark(x1)), a__first(mark(z0), mark(z1))), MARK(sel(x0, x1))) MARK(first(sel(x0, x1), sel(z0, z1))) -> c10(A__FIRST(a__sel(mark(x0), mark(x1)), a__sel(mark(z0), mark(z1))), MARK(sel(x0, x1))) MARK(first(sel(x0, x1), cons(z0, z1))) -> c10(A__FIRST(a__sel(mark(x0), mark(x1)), cons(mark(z0), z1)), MARK(sel(x0, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(A__FIRST(a__sel(mark(x0), mark(x1)), s(mark(z0))), MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(A__FIRST(a__sel(mark(x0), mark(x1)), 0), MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(A__FIRST(a__sel(mark(x0), mark(x1)), nil), MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(A__FIRST(sel(mark(x0), mark(x1)), mark(x2)), MARK(sel(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) ---------------------------------------- (222) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(A__FIRST(a__sel(mark(x0), mark(x1)), s(mark(z0))), MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(A__FIRST(a__sel(mark(x0), mark(x1)), 0), MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(A__FIRST(a__sel(mark(x0), mark(x1)), nil), MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(A__FIRST(sel(mark(x0), mark(x1)), mark(x2)), MARK(sel(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(A__FIRST(a__sel(mark(x0), mark(x1)), s(mark(z0))), MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(A__FIRST(a__sel(mark(x0), mark(x1)), 0), MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(A__FIRST(a__sel(mark(x0), mark(x1)), nil), MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(A__FIRST(sel(mark(x0), mark(x1)), mark(x2)), MARK(sel(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2 ---------------------------------------- (223) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 4 trailing tuple parts ---------------------------------------- (224) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_2, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2 ---------------------------------------- (225) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(first(s(z0), x1)) -> c10(A__FIRST(s(mark(z0)), mark(x1)), MARK(s(z0))) by MARK(first(s(x0), from(z0))) -> c10(A__FIRST(s(mark(x0)), a__from(mark(z0))), MARK(s(x0))) MARK(first(s(x0), first(z0, z1))) -> c10(A__FIRST(s(mark(x0)), a__first(mark(z0), mark(z1))), MARK(s(x0))) MARK(first(s(x0), sel(z0, z1))) -> c10(A__FIRST(s(mark(x0)), a__sel(mark(z0), mark(z1))), MARK(s(x0))) MARK(first(s(x0), cons(z0, z1))) -> c10(A__FIRST(s(mark(x0)), cons(mark(z0), z1)), MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(A__FIRST(s(mark(x0)), s(mark(z0))), MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(A__FIRST(s(mark(x0)), 0), MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(A__FIRST(s(mark(x0)), nil), MARK(s(x0))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) ---------------------------------------- (226) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(x0), s(z0))) -> c10(A__FIRST(s(mark(x0)), s(mark(z0))), MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(A__FIRST(s(mark(x0)), 0), MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(A__FIRST(s(mark(x0)), nil), MARK(s(x0))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(x0), s(z0))) -> c10(A__FIRST(s(mark(x0)), s(mark(z0))), MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(A__FIRST(s(mark(x0)), 0), MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(A__FIRST(s(mark(x0)), nil), MARK(s(x0))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2, c10_2 ---------------------------------------- (227) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 3 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__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2, c10_2 ---------------------------------------- (229) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(first(x0, from(z0))) -> c11(A__FIRST(mark(x0), a__from(mark(z0))), MARK(from(z0))) by MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(A__FIRST(cons(mark(z0), z1), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(0, from(x1))) -> c11(A__FIRST(0, a__from(mark(x1))), MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(A__FIRST(nil, a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) ---------------------------------------- (230) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(A__FIRST(cons(mark(z0), z1), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(0, from(x1))) -> c11(A__FIRST(0, a__from(mark(x1))), MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(A__FIRST(nil, a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(A__FIRST(cons(mark(z0), z1), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(0, from(x1))) -> c11(A__FIRST(0, a__from(mark(x1))), MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(A__FIRST(nil, a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2, c10_2 ---------------------------------------- (231) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 4 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__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2, c10_2 ---------------------------------------- (233) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(first(x0, first(z0, z1))) -> c11(A__FIRST(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) by MARK(first(x0, first(x1, x2))) -> c11(A__FIRST(mark(x0), first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(A__FIRST(cons(mark(z0), z1), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(A__FIRST(0, a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(A__FIRST(nil, a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) ---------------------------------------- (234) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, x2))) -> c11(A__FIRST(mark(x0), first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(A__FIRST(cons(mark(z0), z1), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(A__FIRST(0, a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(A__FIRST(nil, a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, x2))) -> c11(A__FIRST(mark(x0), first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(A__FIRST(cons(mark(z0), z1), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(A__FIRST(0, a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(A__FIRST(nil, a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2, c10_2 ---------------------------------------- (235) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 4 trailing tuple parts ---------------------------------------- (236) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2, c10_2 ---------------------------------------- (237) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(first(x0, sel(z0, z1))) -> c11(A__FIRST(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) by MARK(first(x0, sel(x1, x2))) -> c11(A__FIRST(mark(x0), sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(A__FIRST(cons(mark(z0), z1), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(A__FIRST(0, a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(A__FIRST(nil, a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) ---------------------------------------- (238) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(A__FIRST(mark(x0), sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(A__FIRST(cons(mark(z0), z1), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(A__FIRST(0, a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(A__FIRST(nil, a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(A__FIRST(mark(x0), sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(A__FIRST(cons(mark(z0), z1), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(A__FIRST(0, a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(A__FIRST(nil, a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2, c10_2 ---------------------------------------- (239) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 4 trailing tuple parts ---------------------------------------- (240) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2, c10_2 ---------------------------------------- (241) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(first(x0, cons(z0, z1))) -> c11(A__FIRST(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) by MARK(first(x0, cons(from(z0), x2))) -> c11(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(cons(from(z0), x2))) MARK(first(x0, cons(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(cons(first(z0, z1), x2))) MARK(first(x0, cons(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(cons(sel(z0, z1), x2))) MARK(first(x0, cons(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(cons(cons(z0, z1), x2))) MARK(first(x0, cons(s(z0), x2))) -> c11(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(cons(s(z0), x2))) MARK(first(x0, cons(0, x2))) -> c11(A__FIRST(mark(x0), cons(0, x2)), MARK(cons(0, x2))) MARK(first(x0, cons(nil, x2))) -> c11(A__FIRST(mark(x0), cons(nil, x2)), MARK(cons(nil, x2))) MARK(first(from(z0), cons(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(first(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c11(A__FIRST(cons(mark(z0), z1), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(s(z0), cons(x1, x2))) -> c11(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(0, cons(x1, x2))) -> c11(A__FIRST(0, cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(nil, cons(x1, x2))) -> c11(A__FIRST(nil, cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(x0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) ---------------------------------------- (242) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(x0, cons(from(z0), x2))) -> c11(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(cons(from(z0), x2))) MARK(first(x0, cons(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(cons(first(z0, z1), x2))) MARK(first(x0, cons(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(cons(sel(z0, z1), x2))) MARK(first(x0, cons(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(cons(cons(z0, z1), x2))) MARK(first(x0, cons(s(z0), x2))) -> c11(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(cons(s(z0), x2))) MARK(first(x0, cons(0, x2))) -> c11(A__FIRST(mark(x0), cons(0, x2)), MARK(cons(0, x2))) MARK(first(x0, cons(nil, x2))) -> c11(A__FIRST(mark(x0), cons(nil, x2)), MARK(cons(nil, x2))) MARK(first(from(z0), cons(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(first(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c11(A__FIRST(cons(mark(z0), z1), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(s(z0), cons(x1, x2))) -> c11(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(0, cons(x1, x2))) -> c11(A__FIRST(0, cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(nil, cons(x1, x2))) -> c11(A__FIRST(nil, cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(x0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(x0, cons(from(z0), x2))) -> c11(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(cons(from(z0), x2))) MARK(first(x0, cons(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(cons(first(z0, z1), x2))) MARK(first(x0, cons(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(cons(sel(z0, z1), x2))) MARK(first(x0, cons(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(cons(cons(z0, z1), x2))) MARK(first(x0, cons(s(z0), x2))) -> c11(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(cons(s(z0), x2))) MARK(first(x0, cons(0, x2))) -> c11(A__FIRST(mark(x0), cons(0, x2)), MARK(cons(0, x2))) MARK(first(x0, cons(nil, x2))) -> c11(A__FIRST(mark(x0), cons(nil, x2)), MARK(cons(nil, x2))) MARK(first(from(z0), cons(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(first(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c11(A__FIRST(cons(mark(z0), z1), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(s(z0), cons(x1, x2))) -> c11(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(0, cons(x1, x2))) -> c11(A__FIRST(0, cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(nil, cons(x1, x2))) -> c11(A__FIRST(nil, cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(x0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2, c10_2 ---------------------------------------- (243) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 3 trailing tuple parts ---------------------------------------- (244) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(x0, cons(from(z0), x2))) -> c11(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(cons(from(z0), x2))) MARK(first(x0, cons(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(cons(first(z0, z1), x2))) MARK(first(x0, cons(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(cons(sel(z0, z1), x2))) MARK(first(x0, cons(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(cons(cons(z0, z1), x2))) MARK(first(x0, cons(s(z0), x2))) -> c11(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(cons(s(z0), x2))) MARK(first(x0, cons(0, x2))) -> c11(A__FIRST(mark(x0), cons(0, x2)), MARK(cons(0, x2))) MARK(first(x0, cons(nil, x2))) -> c11(A__FIRST(mark(x0), cons(nil, x2)), MARK(cons(nil, x2))) MARK(first(from(z0), cons(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(first(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(s(z0), cons(x1, x2))) -> c11(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(x0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(nil, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(x0, cons(from(z0), x2))) -> c11(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(cons(from(z0), x2))) MARK(first(x0, cons(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(cons(first(z0, z1), x2))) MARK(first(x0, cons(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(cons(sel(z0, z1), x2))) MARK(first(x0, cons(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(cons(cons(z0, z1), x2))) MARK(first(x0, cons(s(z0), x2))) -> c11(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(cons(s(z0), x2))) MARK(first(x0, cons(0, x2))) -> c11(A__FIRST(mark(x0), cons(0, x2)), MARK(cons(0, x2))) MARK(first(x0, cons(nil, x2))) -> c11(A__FIRST(mark(x0), cons(nil, x2)), MARK(cons(nil, x2))) MARK(first(from(z0), cons(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(first(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(s(z0), cons(x1, x2))) -> c11(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(x0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(nil, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2, c10_2 ---------------------------------------- (245) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(first(from(z0), x1)) -> c11(A__FIRST(a__from(mark(z0)), mark(x1)), MARK(x1)) by MARK(first(from(x0), from(z0))) -> c11(A__FIRST(a__from(mark(x0)), a__from(mark(z0))), MARK(from(z0))) MARK(first(from(x0), first(z0, z1))) -> c11(A__FIRST(a__from(mark(x0)), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(from(x0), sel(z0, z1))) -> c11(A__FIRST(a__from(mark(x0)), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(from(x0), cons(z0, z1))) -> c11(A__FIRST(a__from(mark(x0)), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(from(x0), s(z0))) -> c11(A__FIRST(a__from(mark(x0)), s(mark(z0))), MARK(s(z0))) MARK(first(from(x0), 0)) -> c11(A__FIRST(a__from(mark(x0)), 0), MARK(0)) MARK(first(from(x0), nil)) -> c11(A__FIRST(a__from(mark(x0)), nil), MARK(nil)) MARK(first(from(x0), x1)) -> c11(A__FIRST(cons(mark(mark(x0)), from(s(mark(x0)))), mark(x1)), MARK(x1)) MARK(first(from(x0), x1)) -> c11(A__FIRST(from(mark(x0)), mark(x1)), MARK(x1)) MARK(first(from(from(z0)), x1)) -> c11(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(first(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(sel(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(cons(z0, z1)), x1)) -> c11(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(from(s(z0)), x1)) -> c11(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(0), x1)) -> c11(A__FIRST(a__from(0), mark(x1)), MARK(x1)) MARK(first(from(nil), x1)) -> c11(A__FIRST(a__from(nil), mark(x1)), MARK(x1)) ---------------------------------------- (246) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(x0, cons(from(z0), x2))) -> c11(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(cons(from(z0), x2))) MARK(first(x0, cons(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(cons(first(z0, z1), x2))) MARK(first(x0, cons(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(cons(sel(z0, z1), x2))) MARK(first(x0, cons(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(cons(cons(z0, z1), x2))) MARK(first(x0, cons(s(z0), x2))) -> c11(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(cons(s(z0), x2))) MARK(first(x0, cons(0, x2))) -> c11(A__FIRST(mark(x0), cons(0, x2)), MARK(cons(0, x2))) MARK(first(x0, cons(nil, x2))) -> c11(A__FIRST(mark(x0), cons(nil, x2)), MARK(cons(nil, x2))) MARK(first(from(z0), cons(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(first(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(s(z0), cons(x1, x2))) -> c11(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(x0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(nil, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(from(x0), s(z0))) -> c11(A__FIRST(a__from(mark(x0)), s(mark(z0))), MARK(s(z0))) MARK(first(from(x0), 0)) -> c11(A__FIRST(a__from(mark(x0)), 0), MARK(0)) MARK(first(from(x0), nil)) -> c11(A__FIRST(a__from(mark(x0)), nil), MARK(nil)) MARK(first(from(x0), x1)) -> c11(A__FIRST(cons(mark(mark(x0)), from(s(mark(x0)))), mark(x1)), MARK(x1)) MARK(first(from(x0), x1)) -> c11(A__FIRST(from(mark(x0)), mark(x1)), MARK(x1)) MARK(first(from(from(z0)), x1)) -> c11(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(first(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(sel(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(cons(z0, z1)), x1)) -> c11(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(from(s(z0)), x1)) -> c11(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(0), x1)) -> c11(A__FIRST(a__from(0), mark(x1)), MARK(x1)) MARK(first(from(nil), x1)) -> c11(A__FIRST(a__from(nil), mark(x1)), MARK(x1)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(x0, cons(from(z0), x2))) -> c11(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(cons(from(z0), x2))) MARK(first(x0, cons(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(cons(first(z0, z1), x2))) MARK(first(x0, cons(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(cons(sel(z0, z1), x2))) MARK(first(x0, cons(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(cons(cons(z0, z1), x2))) MARK(first(x0, cons(s(z0), x2))) -> c11(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(cons(s(z0), x2))) MARK(first(x0, cons(0, x2))) -> c11(A__FIRST(mark(x0), cons(0, x2)), MARK(cons(0, x2))) MARK(first(x0, cons(nil, x2))) -> c11(A__FIRST(mark(x0), cons(nil, x2)), MARK(cons(nil, x2))) MARK(first(from(z0), cons(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(first(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(s(z0), cons(x1, x2))) -> c11(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(x0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(nil, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(from(x0), s(z0))) -> c11(A__FIRST(a__from(mark(x0)), s(mark(z0))), MARK(s(z0))) MARK(first(from(x0), 0)) -> c11(A__FIRST(a__from(mark(x0)), 0), MARK(0)) MARK(first(from(x0), nil)) -> c11(A__FIRST(a__from(mark(x0)), nil), MARK(nil)) MARK(first(from(x0), x1)) -> c11(A__FIRST(cons(mark(mark(x0)), from(s(mark(x0)))), mark(x1)), MARK(x1)) MARK(first(from(x0), x1)) -> c11(A__FIRST(from(mark(x0)), mark(x1)), MARK(x1)) MARK(first(from(from(z0)), x1)) -> c11(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(first(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(sel(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(cons(z0, z1)), x1)) -> c11(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(from(s(z0)), x1)) -> c11(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(0), x1)) -> c11(A__FIRST(a__from(0), mark(x1)), MARK(x1)) MARK(first(from(nil), x1)) -> c11(A__FIRST(a__from(nil), mark(x1)), MARK(x1)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2, c10_2 ---------------------------------------- (247) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing nodes: MARK(first(from(x0), nil)) -> c11(A__FIRST(a__from(mark(x0)), nil), MARK(nil)) MARK(first(from(x0), 0)) -> c11(A__FIRST(a__from(mark(x0)), 0), MARK(0)) ---------------------------------------- (248) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(x0, cons(from(z0), x2))) -> c11(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(cons(from(z0), x2))) MARK(first(x0, cons(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(cons(first(z0, z1), x2))) MARK(first(x0, cons(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(cons(sel(z0, z1), x2))) MARK(first(x0, cons(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(cons(cons(z0, z1), x2))) MARK(first(x0, cons(s(z0), x2))) -> c11(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(cons(s(z0), x2))) MARK(first(x0, cons(0, x2))) -> c11(A__FIRST(mark(x0), cons(0, x2)), MARK(cons(0, x2))) MARK(first(x0, cons(nil, x2))) -> c11(A__FIRST(mark(x0), cons(nil, x2)), MARK(cons(nil, x2))) MARK(first(from(z0), cons(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(first(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(s(z0), cons(x1, x2))) -> c11(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(x0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(nil, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(from(x0), s(z0))) -> c11(A__FIRST(a__from(mark(x0)), s(mark(z0))), MARK(s(z0))) MARK(first(from(x0), x1)) -> c11(A__FIRST(cons(mark(mark(x0)), from(s(mark(x0)))), mark(x1)), MARK(x1)) MARK(first(from(x0), x1)) -> c11(A__FIRST(from(mark(x0)), mark(x1)), MARK(x1)) MARK(first(from(from(z0)), x1)) -> c11(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(first(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(sel(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(cons(z0, z1)), x1)) -> c11(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(from(s(z0)), x1)) -> c11(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(0), x1)) -> c11(A__FIRST(a__from(0), mark(x1)), MARK(x1)) MARK(first(from(nil), x1)) -> c11(A__FIRST(a__from(nil), mark(x1)), MARK(x1)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(x0, cons(from(z0), x2))) -> c11(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(cons(from(z0), x2))) MARK(first(x0, cons(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(cons(first(z0, z1), x2))) MARK(first(x0, cons(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(cons(sel(z0, z1), x2))) MARK(first(x0, cons(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(cons(cons(z0, z1), x2))) MARK(first(x0, cons(s(z0), x2))) -> c11(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(cons(s(z0), x2))) MARK(first(x0, cons(0, x2))) -> c11(A__FIRST(mark(x0), cons(0, x2)), MARK(cons(0, x2))) MARK(first(x0, cons(nil, x2))) -> c11(A__FIRST(mark(x0), cons(nil, x2)), MARK(cons(nil, x2))) MARK(first(from(z0), cons(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(first(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(s(z0), cons(x1, x2))) -> c11(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(x0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(nil, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(from(x0), s(z0))) -> c11(A__FIRST(a__from(mark(x0)), s(mark(z0))), MARK(s(z0))) MARK(first(from(x0), x1)) -> c11(A__FIRST(cons(mark(mark(x0)), from(s(mark(x0)))), mark(x1)), MARK(x1)) MARK(first(from(x0), x1)) -> c11(A__FIRST(from(mark(x0)), mark(x1)), MARK(x1)) MARK(first(from(from(z0)), x1)) -> c11(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(first(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(sel(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(cons(z0, z1)), x1)) -> c11(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(from(s(z0)), x1)) -> c11(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(0), x1)) -> c11(A__FIRST(a__from(0), mark(x1)), MARK(x1)) MARK(first(from(nil), x1)) -> c11(A__FIRST(a__from(nil), mark(x1)), MARK(x1)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2, c10_2 ---------------------------------------- (249) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 3 trailing tuple parts ---------------------------------------- (250) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(x0, cons(from(z0), x2))) -> c11(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(cons(from(z0), x2))) MARK(first(x0, cons(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(cons(first(z0, z1), x2))) MARK(first(x0, cons(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(cons(sel(z0, z1), x2))) MARK(first(x0, cons(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(cons(cons(z0, z1), x2))) MARK(first(x0, cons(s(z0), x2))) -> c11(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(cons(s(z0), x2))) MARK(first(x0, cons(0, x2))) -> c11(A__FIRST(mark(x0), cons(0, x2)), MARK(cons(0, x2))) MARK(first(x0, cons(nil, x2))) -> c11(A__FIRST(mark(x0), cons(nil, x2)), MARK(cons(nil, x2))) MARK(first(from(z0), cons(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(first(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(s(z0), cons(x1, x2))) -> c11(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(x0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(nil, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(from(from(z0)), x1)) -> c11(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(first(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(sel(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(cons(z0, z1)), x1)) -> c11(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(from(s(z0)), x1)) -> c11(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(0), x1)) -> c11(A__FIRST(a__from(0), mark(x1)), MARK(x1)) MARK(first(from(nil), x1)) -> c11(A__FIRST(a__from(nil), mark(x1)), MARK(x1)) MARK(first(from(x0), s(z0))) -> c11(MARK(s(z0))) MARK(first(from(x0), x1)) -> c11(MARK(x1)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(x0, cons(from(z0), x2))) -> c11(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(cons(from(z0), x2))) MARK(first(x0, cons(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(cons(first(z0, z1), x2))) MARK(first(x0, cons(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(cons(sel(z0, z1), x2))) MARK(first(x0, cons(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(cons(cons(z0, z1), x2))) MARK(first(x0, cons(s(z0), x2))) -> c11(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(cons(s(z0), x2))) MARK(first(x0, cons(0, x2))) -> c11(A__FIRST(mark(x0), cons(0, x2)), MARK(cons(0, x2))) MARK(first(x0, cons(nil, x2))) -> c11(A__FIRST(mark(x0), cons(nil, x2)), MARK(cons(nil, x2))) MARK(first(from(z0), cons(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(first(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(s(z0), cons(x1, x2))) -> c11(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(x0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(nil, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(from(from(z0)), x1)) -> c11(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(first(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(sel(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(cons(z0, z1)), x1)) -> c11(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(from(s(z0)), x1)) -> c11(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(0), x1)) -> c11(A__FIRST(a__from(0), mark(x1)), MARK(x1)) MARK(first(from(nil), x1)) -> c11(A__FIRST(a__from(nil), mark(x1)), MARK(x1)) MARK(first(from(x0), s(z0))) -> c11(MARK(s(z0))) MARK(first(from(x0), x1)) -> c11(MARK(x1)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2, c10_2 ---------------------------------------- (251) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(first(first(z0, z1), x1)) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) by MARK(first(first(x0, x1), from(z0))) -> c11(A__FIRST(a__first(mark(x0), mark(x1)), a__from(mark(z0))), MARK(from(z0))) MARK(first(first(x0, x1), first(z0, z1))) -> c11(A__FIRST(a__first(mark(x0), mark(x1)), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(first(x0, x1), sel(z0, z1))) -> c11(A__FIRST(a__first(mark(x0), mark(x1)), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(first(x0, x1), cons(z0, z1))) -> c11(A__FIRST(a__first(mark(x0), mark(x1)), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(first(x0, x1), s(z0))) -> c11(A__FIRST(a__first(mark(x0), mark(x1)), s(mark(z0))), MARK(s(z0))) MARK(first(first(x0, x1), 0)) -> c11(A__FIRST(a__first(mark(x0), mark(x1)), 0), MARK(0)) MARK(first(first(x0, x1), nil)) -> c11(A__FIRST(a__first(mark(x0), mark(x1)), nil), MARK(nil)) MARK(first(first(x0, x1), x2)) -> c11(A__FIRST(first(mark(x0), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(x0, from(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(first(x0, s(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, 0), x2)) -> c11(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(first(x0, nil), x2)) -> c11(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(first(from(z0), x1), x2)) -> c11(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(s(z0), x1), x2)) -> c11(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(0, x1), x2)) -> c11(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(nil, x1), x2)) -> c11(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(x2)) ---------------------------------------- (252) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(x0, cons(from(z0), x2))) -> c11(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(cons(from(z0), x2))) MARK(first(x0, cons(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(cons(first(z0, z1), x2))) MARK(first(x0, cons(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(cons(sel(z0, z1), x2))) MARK(first(x0, cons(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(cons(cons(z0, z1), x2))) MARK(first(x0, cons(s(z0), x2))) -> c11(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(cons(s(z0), x2))) MARK(first(x0, cons(0, x2))) -> c11(A__FIRST(mark(x0), cons(0, x2)), MARK(cons(0, x2))) MARK(first(x0, cons(nil, x2))) -> c11(A__FIRST(mark(x0), cons(nil, x2)), MARK(cons(nil, x2))) MARK(first(from(z0), cons(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(first(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(s(z0), cons(x1, x2))) -> c11(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(x0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(nil, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(from(from(z0)), x1)) -> c11(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(first(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(sel(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(cons(z0, z1)), x1)) -> c11(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(from(s(z0)), x1)) -> c11(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(0), x1)) -> c11(A__FIRST(a__from(0), mark(x1)), MARK(x1)) MARK(first(from(nil), x1)) -> c11(A__FIRST(a__from(nil), mark(x1)), MARK(x1)) MARK(first(from(x0), s(z0))) -> c11(MARK(s(z0))) MARK(first(from(x0), x1)) -> c11(MARK(x1)) MARK(first(first(x0, x1), s(z0))) -> c11(A__FIRST(a__first(mark(x0), mark(x1)), s(mark(z0))), MARK(s(z0))) MARK(first(first(x0, x1), 0)) -> c11(A__FIRST(a__first(mark(x0), mark(x1)), 0), MARK(0)) MARK(first(first(x0, x1), nil)) -> c11(A__FIRST(a__first(mark(x0), mark(x1)), nil), MARK(nil)) MARK(first(first(x0, x1), x2)) -> c11(A__FIRST(first(mark(x0), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(x0, from(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(first(x0, s(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, 0), x2)) -> c11(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(first(x0, nil), x2)) -> c11(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(first(from(z0), x1), x2)) -> c11(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(s(z0), x1), x2)) -> c11(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(0, x1), x2)) -> c11(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(nil, x1), x2)) -> c11(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(x2)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(x0, cons(from(z0), x2))) -> c11(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(cons(from(z0), x2))) MARK(first(x0, cons(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(cons(first(z0, z1), x2))) MARK(first(x0, cons(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(cons(sel(z0, z1), x2))) MARK(first(x0, cons(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(cons(cons(z0, z1), x2))) MARK(first(x0, cons(s(z0), x2))) -> c11(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(cons(s(z0), x2))) MARK(first(x0, cons(0, x2))) -> c11(A__FIRST(mark(x0), cons(0, x2)), MARK(cons(0, x2))) MARK(first(x0, cons(nil, x2))) -> c11(A__FIRST(mark(x0), cons(nil, x2)), MARK(cons(nil, x2))) MARK(first(from(z0), cons(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(first(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(s(z0), cons(x1, x2))) -> c11(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(x0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(nil, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(from(from(z0)), x1)) -> c11(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(first(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(sel(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(cons(z0, z1)), x1)) -> c11(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(from(s(z0)), x1)) -> c11(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(0), x1)) -> c11(A__FIRST(a__from(0), mark(x1)), MARK(x1)) MARK(first(from(nil), x1)) -> c11(A__FIRST(a__from(nil), mark(x1)), MARK(x1)) MARK(first(from(x0), s(z0))) -> c11(MARK(s(z0))) MARK(first(from(x0), x1)) -> c11(MARK(x1)) MARK(first(first(x0, x1), s(z0))) -> c11(A__FIRST(a__first(mark(x0), mark(x1)), s(mark(z0))), MARK(s(z0))) MARK(first(first(x0, x1), 0)) -> c11(A__FIRST(a__first(mark(x0), mark(x1)), 0), MARK(0)) MARK(first(first(x0, x1), nil)) -> c11(A__FIRST(a__first(mark(x0), mark(x1)), nil), MARK(nil)) MARK(first(first(x0, x1), x2)) -> c11(A__FIRST(first(mark(x0), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(x0, from(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(first(x0, s(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, 0), x2)) -> c11(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(first(x0, nil), x2)) -> c11(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(first(from(z0), x1), x2)) -> c11(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(s(z0), x1), x2)) -> c11(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(0, x1), x2)) -> c11(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(nil, x1), x2)) -> c11(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(x2)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2, c10_2 ---------------------------------------- (253) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing nodes: MARK(first(first(x0, x1), 0)) -> c11(A__FIRST(a__first(mark(x0), mark(x1)), 0), MARK(0)) MARK(first(first(x0, x1), nil)) -> c11(A__FIRST(a__first(mark(x0), mark(x1)), nil), MARK(nil)) ---------------------------------------- (254) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(x0, cons(from(z0), x2))) -> c11(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(cons(from(z0), x2))) MARK(first(x0, cons(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(cons(first(z0, z1), x2))) MARK(first(x0, cons(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(cons(sel(z0, z1), x2))) MARK(first(x0, cons(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(cons(cons(z0, z1), x2))) MARK(first(x0, cons(s(z0), x2))) -> c11(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(cons(s(z0), x2))) MARK(first(x0, cons(0, x2))) -> c11(A__FIRST(mark(x0), cons(0, x2)), MARK(cons(0, x2))) MARK(first(x0, cons(nil, x2))) -> c11(A__FIRST(mark(x0), cons(nil, x2)), MARK(cons(nil, x2))) MARK(first(from(z0), cons(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(first(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(s(z0), cons(x1, x2))) -> c11(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(x0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(nil, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(from(from(z0)), x1)) -> c11(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(first(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(sel(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(cons(z0, z1)), x1)) -> c11(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(from(s(z0)), x1)) -> c11(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(0), x1)) -> c11(A__FIRST(a__from(0), mark(x1)), MARK(x1)) MARK(first(from(nil), x1)) -> c11(A__FIRST(a__from(nil), mark(x1)), MARK(x1)) MARK(first(from(x0), s(z0))) -> c11(MARK(s(z0))) MARK(first(from(x0), x1)) -> c11(MARK(x1)) MARK(first(first(x0, x1), s(z0))) -> c11(A__FIRST(a__first(mark(x0), mark(x1)), s(mark(z0))), MARK(s(z0))) MARK(first(first(x0, x1), x2)) -> c11(A__FIRST(first(mark(x0), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(x0, from(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(first(x0, s(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, 0), x2)) -> c11(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(first(x0, nil), x2)) -> c11(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(first(from(z0), x1), x2)) -> c11(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(s(z0), x1), x2)) -> c11(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(0, x1), x2)) -> c11(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(nil, x1), x2)) -> c11(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(x2)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(x0, cons(from(z0), x2))) -> c11(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(cons(from(z0), x2))) MARK(first(x0, cons(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(cons(first(z0, z1), x2))) MARK(first(x0, cons(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(cons(sel(z0, z1), x2))) MARK(first(x0, cons(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(cons(cons(z0, z1), x2))) MARK(first(x0, cons(s(z0), x2))) -> c11(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(cons(s(z0), x2))) MARK(first(x0, cons(0, x2))) -> c11(A__FIRST(mark(x0), cons(0, x2)), MARK(cons(0, x2))) MARK(first(x0, cons(nil, x2))) -> c11(A__FIRST(mark(x0), cons(nil, x2)), MARK(cons(nil, x2))) MARK(first(from(z0), cons(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(first(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(s(z0), cons(x1, x2))) -> c11(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(x0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(nil, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(from(from(z0)), x1)) -> c11(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(first(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(sel(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(cons(z0, z1)), x1)) -> c11(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(from(s(z0)), x1)) -> c11(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(0), x1)) -> c11(A__FIRST(a__from(0), mark(x1)), MARK(x1)) MARK(first(from(nil), x1)) -> c11(A__FIRST(a__from(nil), mark(x1)), MARK(x1)) MARK(first(from(x0), s(z0))) -> c11(MARK(s(z0))) MARK(first(from(x0), x1)) -> c11(MARK(x1)) MARK(first(first(x0, x1), s(z0))) -> c11(A__FIRST(a__first(mark(x0), mark(x1)), s(mark(z0))), MARK(s(z0))) MARK(first(first(x0, x1), x2)) -> c11(A__FIRST(first(mark(x0), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(x0, from(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(first(x0, s(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, 0), x2)) -> c11(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(first(x0, nil), x2)) -> c11(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(first(from(z0), x1), x2)) -> c11(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(s(z0), x1), x2)) -> c11(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(0, x1), x2)) -> c11(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(nil, x1), x2)) -> c11(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(x2)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2, c10_2 ---------------------------------------- (255) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing tuple parts ---------------------------------------- (256) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(x0, cons(from(z0), x2))) -> c11(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(cons(from(z0), x2))) MARK(first(x0, cons(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(cons(first(z0, z1), x2))) MARK(first(x0, cons(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(cons(sel(z0, z1), x2))) MARK(first(x0, cons(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(cons(cons(z0, z1), x2))) MARK(first(x0, cons(s(z0), x2))) -> c11(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(cons(s(z0), x2))) MARK(first(x0, cons(0, x2))) -> c11(A__FIRST(mark(x0), cons(0, x2)), MARK(cons(0, x2))) MARK(first(x0, cons(nil, x2))) -> c11(A__FIRST(mark(x0), cons(nil, x2)), MARK(cons(nil, x2))) MARK(first(from(z0), cons(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(first(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(s(z0), cons(x1, x2))) -> c11(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(x0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(nil, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(from(from(z0)), x1)) -> c11(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(first(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(sel(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(cons(z0, z1)), x1)) -> c11(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(from(s(z0)), x1)) -> c11(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(0), x1)) -> c11(A__FIRST(a__from(0), mark(x1)), MARK(x1)) MARK(first(from(nil), x1)) -> c11(A__FIRST(a__from(nil), mark(x1)), MARK(x1)) MARK(first(from(x0), s(z0))) -> c11(MARK(s(z0))) MARK(first(from(x0), x1)) -> c11(MARK(x1)) MARK(first(first(x0, from(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(first(x0, s(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, 0), x2)) -> c11(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(first(x0, nil), x2)) -> c11(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(first(from(z0), x1), x2)) -> c11(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(s(z0), x1), x2)) -> c11(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(0, x1), x2)) -> c11(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(nil, x1), x2)) -> c11(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(first(x0, x1), x2)) -> c11(MARK(x2)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(x0, cons(from(z0), x2))) -> c11(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(cons(from(z0), x2))) MARK(first(x0, cons(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(cons(first(z0, z1), x2))) MARK(first(x0, cons(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(cons(sel(z0, z1), x2))) MARK(first(x0, cons(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(cons(cons(z0, z1), x2))) MARK(first(x0, cons(s(z0), x2))) -> c11(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(cons(s(z0), x2))) MARK(first(x0, cons(0, x2))) -> c11(A__FIRST(mark(x0), cons(0, x2)), MARK(cons(0, x2))) MARK(first(x0, cons(nil, x2))) -> c11(A__FIRST(mark(x0), cons(nil, x2)), MARK(cons(nil, x2))) MARK(first(from(z0), cons(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(first(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(s(z0), cons(x1, x2))) -> c11(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(x0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(nil, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(from(from(z0)), x1)) -> c11(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(first(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(sel(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(cons(z0, z1)), x1)) -> c11(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(from(s(z0)), x1)) -> c11(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(0), x1)) -> c11(A__FIRST(a__from(0), mark(x1)), MARK(x1)) MARK(first(from(nil), x1)) -> c11(A__FIRST(a__from(nil), mark(x1)), MARK(x1)) MARK(first(from(x0), s(z0))) -> c11(MARK(s(z0))) MARK(first(from(x0), x1)) -> c11(MARK(x1)) MARK(first(first(x0, from(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(first(x0, s(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, 0), x2)) -> c11(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(first(x0, nil), x2)) -> c11(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(first(from(z0), x1), x2)) -> c11(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(s(z0), x1), x2)) -> c11(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(0, x1), x2)) -> c11(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(nil, x1), x2)) -> c11(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(first(x0, x1), x2)) -> c11(MARK(x2)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2, c10_2 ---------------------------------------- (257) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(first(sel(z0, z1), x1)) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) by MARK(first(sel(x0, x1), from(z0))) -> c11(A__FIRST(a__sel(mark(x0), mark(x1)), a__from(mark(z0))), MARK(from(z0))) MARK(first(sel(x0, x1), first(z0, z1))) -> c11(A__FIRST(a__sel(mark(x0), mark(x1)), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(sel(x0, x1), sel(z0, z1))) -> c11(A__FIRST(a__sel(mark(x0), mark(x1)), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(sel(x0, x1), cons(z0, z1))) -> c11(A__FIRST(a__sel(mark(x0), mark(x1)), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(sel(x0, x1), s(z0))) -> c11(A__FIRST(a__sel(mark(x0), mark(x1)), s(mark(z0))), MARK(s(z0))) MARK(first(sel(x0, x1), 0)) -> c11(A__FIRST(a__sel(mark(x0), mark(x1)), 0), MARK(0)) MARK(first(sel(x0, x1), nil)) -> c11(A__FIRST(a__sel(mark(x0), mark(x1)), nil), MARK(nil)) MARK(first(sel(x0, x1), x2)) -> c11(A__FIRST(sel(mark(x0), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, from(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, s(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, 0), x2)) -> c11(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(sel(x0, nil), x2)) -> c11(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(sel(from(z0), x1), x2)) -> c11(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(s(z0), x1), x2)) -> c11(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(0, x1), x2)) -> c11(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(nil, x1), x2)) -> c11(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(x2)) ---------------------------------------- (258) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(x0, cons(from(z0), x2))) -> c11(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(cons(from(z0), x2))) MARK(first(x0, cons(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(cons(first(z0, z1), x2))) MARK(first(x0, cons(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(cons(sel(z0, z1), x2))) MARK(first(x0, cons(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(cons(cons(z0, z1), x2))) MARK(first(x0, cons(s(z0), x2))) -> c11(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(cons(s(z0), x2))) MARK(first(x0, cons(0, x2))) -> c11(A__FIRST(mark(x0), cons(0, x2)), MARK(cons(0, x2))) MARK(first(x0, cons(nil, x2))) -> c11(A__FIRST(mark(x0), cons(nil, x2)), MARK(cons(nil, x2))) MARK(first(from(z0), cons(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(first(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(s(z0), cons(x1, x2))) -> c11(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(x0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(nil, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(from(from(z0)), x1)) -> c11(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(first(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(sel(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(cons(z0, z1)), x1)) -> c11(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(from(s(z0)), x1)) -> c11(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(0), x1)) -> c11(A__FIRST(a__from(0), mark(x1)), MARK(x1)) MARK(first(from(nil), x1)) -> c11(A__FIRST(a__from(nil), mark(x1)), MARK(x1)) MARK(first(from(x0), s(z0))) -> c11(MARK(s(z0))) MARK(first(from(x0), x1)) -> c11(MARK(x1)) MARK(first(first(x0, from(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(first(x0, s(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, 0), x2)) -> c11(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(first(x0, nil), x2)) -> c11(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(first(from(z0), x1), x2)) -> c11(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(s(z0), x1), x2)) -> c11(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(0, x1), x2)) -> c11(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(nil, x1), x2)) -> c11(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(first(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(sel(x0, x1), s(z0))) -> c11(A__FIRST(a__sel(mark(x0), mark(x1)), s(mark(z0))), MARK(s(z0))) MARK(first(sel(x0, x1), 0)) -> c11(A__FIRST(a__sel(mark(x0), mark(x1)), 0), MARK(0)) MARK(first(sel(x0, x1), nil)) -> c11(A__FIRST(a__sel(mark(x0), mark(x1)), nil), MARK(nil)) MARK(first(sel(x0, x1), x2)) -> c11(A__FIRST(sel(mark(x0), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, from(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, s(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, 0), x2)) -> c11(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(sel(x0, nil), x2)) -> c11(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(sel(from(z0), x1), x2)) -> c11(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(s(z0), x1), x2)) -> c11(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(0, x1), x2)) -> c11(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(nil, x1), x2)) -> c11(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(x2)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(x0, cons(from(z0), x2))) -> c11(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(cons(from(z0), x2))) MARK(first(x0, cons(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(cons(first(z0, z1), x2))) MARK(first(x0, cons(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(cons(sel(z0, z1), x2))) MARK(first(x0, cons(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(cons(cons(z0, z1), x2))) MARK(first(x0, cons(s(z0), x2))) -> c11(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(cons(s(z0), x2))) MARK(first(x0, cons(0, x2))) -> c11(A__FIRST(mark(x0), cons(0, x2)), MARK(cons(0, x2))) MARK(first(x0, cons(nil, x2))) -> c11(A__FIRST(mark(x0), cons(nil, x2)), MARK(cons(nil, x2))) MARK(first(from(z0), cons(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(first(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(s(z0), cons(x1, x2))) -> c11(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(x0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(nil, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(from(from(z0)), x1)) -> c11(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(first(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(sel(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(cons(z0, z1)), x1)) -> c11(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(from(s(z0)), x1)) -> c11(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(0), x1)) -> c11(A__FIRST(a__from(0), mark(x1)), MARK(x1)) MARK(first(from(nil), x1)) -> c11(A__FIRST(a__from(nil), mark(x1)), MARK(x1)) MARK(first(from(x0), s(z0))) -> c11(MARK(s(z0))) MARK(first(from(x0), x1)) -> c11(MARK(x1)) MARK(first(first(x0, from(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(first(x0, s(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, 0), x2)) -> c11(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(first(x0, nil), x2)) -> c11(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(first(from(z0), x1), x2)) -> c11(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(s(z0), x1), x2)) -> c11(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(0, x1), x2)) -> c11(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(nil, x1), x2)) -> c11(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(first(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(sel(x0, x1), s(z0))) -> c11(A__FIRST(a__sel(mark(x0), mark(x1)), s(mark(z0))), MARK(s(z0))) MARK(first(sel(x0, x1), 0)) -> c11(A__FIRST(a__sel(mark(x0), mark(x1)), 0), MARK(0)) MARK(first(sel(x0, x1), nil)) -> c11(A__FIRST(a__sel(mark(x0), mark(x1)), nil), MARK(nil)) MARK(first(sel(x0, x1), x2)) -> c11(A__FIRST(sel(mark(x0), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, from(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, s(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, 0), x2)) -> c11(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(sel(x0, nil), x2)) -> c11(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(sel(from(z0), x1), x2)) -> c11(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(s(z0), x1), x2)) -> c11(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(0, x1), x2)) -> c11(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(nil, x1), x2)) -> c11(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(x2)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2, c10_2 ---------------------------------------- (259) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing nodes: MARK(first(sel(x0, x1), nil)) -> c11(A__FIRST(a__sel(mark(x0), mark(x1)), nil), MARK(nil)) MARK(first(sel(x0, x1), 0)) -> c11(A__FIRST(a__sel(mark(x0), mark(x1)), 0), MARK(0)) ---------------------------------------- (260) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(x0, cons(from(z0), x2))) -> c11(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(cons(from(z0), x2))) MARK(first(x0, cons(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(cons(first(z0, z1), x2))) MARK(first(x0, cons(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(cons(sel(z0, z1), x2))) MARK(first(x0, cons(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(cons(cons(z0, z1), x2))) MARK(first(x0, cons(s(z0), x2))) -> c11(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(cons(s(z0), x2))) MARK(first(x0, cons(0, x2))) -> c11(A__FIRST(mark(x0), cons(0, x2)), MARK(cons(0, x2))) MARK(first(x0, cons(nil, x2))) -> c11(A__FIRST(mark(x0), cons(nil, x2)), MARK(cons(nil, x2))) MARK(first(from(z0), cons(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(first(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(s(z0), cons(x1, x2))) -> c11(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(x0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(nil, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(from(from(z0)), x1)) -> c11(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(first(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(sel(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(cons(z0, z1)), x1)) -> c11(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(from(s(z0)), x1)) -> c11(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(0), x1)) -> c11(A__FIRST(a__from(0), mark(x1)), MARK(x1)) MARK(first(from(nil), x1)) -> c11(A__FIRST(a__from(nil), mark(x1)), MARK(x1)) MARK(first(from(x0), s(z0))) -> c11(MARK(s(z0))) MARK(first(from(x0), x1)) -> c11(MARK(x1)) MARK(first(first(x0, from(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(first(x0, s(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, 0), x2)) -> c11(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(first(x0, nil), x2)) -> c11(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(first(from(z0), x1), x2)) -> c11(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(s(z0), x1), x2)) -> c11(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(0, x1), x2)) -> c11(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(nil, x1), x2)) -> c11(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(first(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(sel(x0, x1), s(z0))) -> c11(A__FIRST(a__sel(mark(x0), mark(x1)), s(mark(z0))), MARK(s(z0))) MARK(first(sel(x0, x1), x2)) -> c11(A__FIRST(sel(mark(x0), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, from(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, s(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, 0), x2)) -> c11(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(sel(x0, nil), x2)) -> c11(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(sel(from(z0), x1), x2)) -> c11(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(s(z0), x1), x2)) -> c11(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(0, x1), x2)) -> c11(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(nil, x1), x2)) -> c11(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(x2)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(x0, cons(from(z0), x2))) -> c11(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(cons(from(z0), x2))) MARK(first(x0, cons(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(cons(first(z0, z1), x2))) MARK(first(x0, cons(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(cons(sel(z0, z1), x2))) MARK(first(x0, cons(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(cons(cons(z0, z1), x2))) MARK(first(x0, cons(s(z0), x2))) -> c11(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(cons(s(z0), x2))) MARK(first(x0, cons(0, x2))) -> c11(A__FIRST(mark(x0), cons(0, x2)), MARK(cons(0, x2))) MARK(first(x0, cons(nil, x2))) -> c11(A__FIRST(mark(x0), cons(nil, x2)), MARK(cons(nil, x2))) MARK(first(from(z0), cons(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(first(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(s(z0), cons(x1, x2))) -> c11(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(x0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(nil, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(from(from(z0)), x1)) -> c11(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(first(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(sel(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(cons(z0, z1)), x1)) -> c11(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(from(s(z0)), x1)) -> c11(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(0), x1)) -> c11(A__FIRST(a__from(0), mark(x1)), MARK(x1)) MARK(first(from(nil), x1)) -> c11(A__FIRST(a__from(nil), mark(x1)), MARK(x1)) MARK(first(from(x0), s(z0))) -> c11(MARK(s(z0))) MARK(first(from(x0), x1)) -> c11(MARK(x1)) MARK(first(first(x0, from(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(first(x0, s(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, 0), x2)) -> c11(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(first(x0, nil), x2)) -> c11(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(first(from(z0), x1), x2)) -> c11(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(s(z0), x1), x2)) -> c11(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(0, x1), x2)) -> c11(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(nil, x1), x2)) -> c11(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(first(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(sel(x0, x1), s(z0))) -> c11(A__FIRST(a__sel(mark(x0), mark(x1)), s(mark(z0))), MARK(s(z0))) MARK(first(sel(x0, x1), x2)) -> c11(A__FIRST(sel(mark(x0), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, from(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, s(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, 0), x2)) -> c11(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(sel(x0, nil), x2)) -> c11(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(sel(from(z0), x1), x2)) -> c11(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(s(z0), x1), x2)) -> c11(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(0, x1), x2)) -> c11(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(nil, x1), x2)) -> c11(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(x2)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2, c10_2 ---------------------------------------- (261) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing tuple parts ---------------------------------------- (262) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(x0, cons(from(z0), x2))) -> c11(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(cons(from(z0), x2))) MARK(first(x0, cons(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(cons(first(z0, z1), x2))) MARK(first(x0, cons(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(cons(sel(z0, z1), x2))) MARK(first(x0, cons(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(cons(cons(z0, z1), x2))) MARK(first(x0, cons(s(z0), x2))) -> c11(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(cons(s(z0), x2))) MARK(first(x0, cons(0, x2))) -> c11(A__FIRST(mark(x0), cons(0, x2)), MARK(cons(0, x2))) MARK(first(x0, cons(nil, x2))) -> c11(A__FIRST(mark(x0), cons(nil, x2)), MARK(cons(nil, x2))) MARK(first(from(z0), cons(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(first(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(s(z0), cons(x1, x2))) -> c11(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(x0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(nil, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(from(from(z0)), x1)) -> c11(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(first(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(sel(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(cons(z0, z1)), x1)) -> c11(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(from(s(z0)), x1)) -> c11(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(0), x1)) -> c11(A__FIRST(a__from(0), mark(x1)), MARK(x1)) MARK(first(from(nil), x1)) -> c11(A__FIRST(a__from(nil), mark(x1)), MARK(x1)) MARK(first(from(x0), s(z0))) -> c11(MARK(s(z0))) MARK(first(from(x0), x1)) -> c11(MARK(x1)) MARK(first(first(x0, from(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(first(x0, s(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, 0), x2)) -> c11(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(first(x0, nil), x2)) -> c11(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(first(from(z0), x1), x2)) -> c11(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(s(z0), x1), x2)) -> c11(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(0, x1), x2)) -> c11(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(nil, x1), x2)) -> c11(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(first(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(sel(x0, from(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, s(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, 0), x2)) -> c11(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(sel(x0, nil), x2)) -> c11(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(sel(from(z0), x1), x2)) -> c11(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(s(z0), x1), x2)) -> c11(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(0, x1), x2)) -> c11(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(nil, x1), x2)) -> c11(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(sel(x0, x1), x2)) -> c11(MARK(x2)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(x0, cons(from(z0), x2))) -> c11(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(cons(from(z0), x2))) MARK(first(x0, cons(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(cons(first(z0, z1), x2))) MARK(first(x0, cons(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(cons(sel(z0, z1), x2))) MARK(first(x0, cons(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(cons(cons(z0, z1), x2))) MARK(first(x0, cons(s(z0), x2))) -> c11(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(cons(s(z0), x2))) MARK(first(x0, cons(0, x2))) -> c11(A__FIRST(mark(x0), cons(0, x2)), MARK(cons(0, x2))) MARK(first(x0, cons(nil, x2))) -> c11(A__FIRST(mark(x0), cons(nil, x2)), MARK(cons(nil, x2))) MARK(first(from(z0), cons(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(first(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(s(z0), cons(x1, x2))) -> c11(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(x0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(nil, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(from(from(z0)), x1)) -> c11(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(first(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(sel(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(cons(z0, z1)), x1)) -> c11(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(from(s(z0)), x1)) -> c11(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(0), x1)) -> c11(A__FIRST(a__from(0), mark(x1)), MARK(x1)) MARK(first(from(nil), x1)) -> c11(A__FIRST(a__from(nil), mark(x1)), MARK(x1)) MARK(first(from(x0), s(z0))) -> c11(MARK(s(z0))) MARK(first(from(x0), x1)) -> c11(MARK(x1)) MARK(first(first(x0, from(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(first(x0, s(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, 0), x2)) -> c11(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(first(x0, nil), x2)) -> c11(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(first(from(z0), x1), x2)) -> c11(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(s(z0), x1), x2)) -> c11(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(0, x1), x2)) -> c11(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(nil, x1), x2)) -> c11(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(first(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(sel(x0, from(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, s(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, 0), x2)) -> c11(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(sel(x0, nil), x2)) -> c11(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(sel(from(z0), x1), x2)) -> c11(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(s(z0), x1), x2)) -> c11(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(0, x1), x2)) -> c11(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(nil, x1), x2)) -> c11(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(sel(x0, x1), x2)) -> c11(MARK(x2)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_1, c11_2, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2, c10_2 ---------------------------------------- (263) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(first(s(z0), x1)) -> c11(A__FIRST(s(mark(z0)), mark(x1)), MARK(x1)) by MARK(first(s(x0), from(z0))) -> c11(A__FIRST(s(mark(x0)), a__from(mark(z0))), MARK(from(z0))) MARK(first(s(x0), first(z0, z1))) -> c11(A__FIRST(s(mark(x0)), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(first(s(x0), sel(z0, z1))) -> c11(A__FIRST(s(mark(x0)), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(first(s(x0), cons(z0, z1))) -> c11(A__FIRST(s(mark(x0)), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(first(s(x0), s(z0))) -> c11(A__FIRST(s(mark(x0)), s(mark(z0))), MARK(s(z0))) MARK(first(s(x0), 0)) -> c11(A__FIRST(s(mark(x0)), 0), MARK(0)) MARK(first(s(x0), nil)) -> c11(A__FIRST(s(mark(x0)), nil), MARK(nil)) MARK(first(s(from(z0)), x1)) -> c11(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(first(z0, z1)), x1)) -> c11(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(sel(z0, z1)), x1)) -> c11(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(cons(z0, z1)), x1)) -> c11(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(s(s(z0)), x1)) -> c11(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(0), x1)) -> c11(A__FIRST(s(0), mark(x1)), MARK(x1)) MARK(first(s(nil), x1)) -> c11(A__FIRST(s(nil), mark(x1)), MARK(x1)) ---------------------------------------- (264) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(x0, cons(from(z0), x2))) -> c11(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(cons(from(z0), x2))) MARK(first(x0, cons(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(cons(first(z0, z1), x2))) MARK(first(x0, cons(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(cons(sel(z0, z1), x2))) MARK(first(x0, cons(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(cons(cons(z0, z1), x2))) MARK(first(x0, cons(s(z0), x2))) -> c11(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(cons(s(z0), x2))) MARK(first(x0, cons(0, x2))) -> c11(A__FIRST(mark(x0), cons(0, x2)), MARK(cons(0, x2))) MARK(first(x0, cons(nil, x2))) -> c11(A__FIRST(mark(x0), cons(nil, x2)), MARK(cons(nil, x2))) MARK(first(from(z0), cons(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(first(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(s(z0), cons(x1, x2))) -> c11(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(x0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(nil, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(from(from(z0)), x1)) -> c11(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(first(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(sel(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(cons(z0, z1)), x1)) -> c11(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(from(s(z0)), x1)) -> c11(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(0), x1)) -> c11(A__FIRST(a__from(0), mark(x1)), MARK(x1)) MARK(first(from(nil), x1)) -> c11(A__FIRST(a__from(nil), mark(x1)), MARK(x1)) MARK(first(from(x0), s(z0))) -> c11(MARK(s(z0))) MARK(first(from(x0), x1)) -> c11(MARK(x1)) MARK(first(first(x0, from(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(first(x0, s(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, 0), x2)) -> c11(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(first(x0, nil), x2)) -> c11(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(first(from(z0), x1), x2)) -> c11(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(s(z0), x1), x2)) -> c11(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(0, x1), x2)) -> c11(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(nil, x1), x2)) -> c11(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(first(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(sel(x0, from(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, s(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, 0), x2)) -> c11(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(sel(x0, nil), x2)) -> c11(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(sel(from(z0), x1), x2)) -> c11(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(s(z0), x1), x2)) -> c11(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(0, x1), x2)) -> c11(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(nil, x1), x2)) -> c11(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(sel(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(s(x0), s(z0))) -> c11(A__FIRST(s(mark(x0)), s(mark(z0))), MARK(s(z0))) MARK(first(s(x0), 0)) -> c11(A__FIRST(s(mark(x0)), 0), MARK(0)) MARK(first(s(x0), nil)) -> c11(A__FIRST(s(mark(x0)), nil), MARK(nil)) MARK(first(s(from(z0)), x1)) -> c11(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(first(z0, z1)), x1)) -> c11(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(sel(z0, z1)), x1)) -> c11(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(cons(z0, z1)), x1)) -> c11(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(s(s(z0)), x1)) -> c11(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(0), x1)) -> c11(A__FIRST(s(0), mark(x1)), MARK(x1)) MARK(first(s(nil), x1)) -> c11(A__FIRST(s(nil), mark(x1)), MARK(x1)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(x0, cons(from(z0), x2))) -> c11(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(cons(from(z0), x2))) MARK(first(x0, cons(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(cons(first(z0, z1), x2))) MARK(first(x0, cons(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(cons(sel(z0, z1), x2))) MARK(first(x0, cons(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(cons(cons(z0, z1), x2))) MARK(first(x0, cons(s(z0), x2))) -> c11(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(cons(s(z0), x2))) MARK(first(x0, cons(0, x2))) -> c11(A__FIRST(mark(x0), cons(0, x2)), MARK(cons(0, x2))) MARK(first(x0, cons(nil, x2))) -> c11(A__FIRST(mark(x0), cons(nil, x2)), MARK(cons(nil, x2))) MARK(first(from(z0), cons(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(first(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(s(z0), cons(x1, x2))) -> c11(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(x0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(nil, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(from(from(z0)), x1)) -> c11(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(first(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(sel(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(cons(z0, z1)), x1)) -> c11(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(from(s(z0)), x1)) -> c11(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(0), x1)) -> c11(A__FIRST(a__from(0), mark(x1)), MARK(x1)) MARK(first(from(nil), x1)) -> c11(A__FIRST(a__from(nil), mark(x1)), MARK(x1)) MARK(first(from(x0), s(z0))) -> c11(MARK(s(z0))) MARK(first(from(x0), x1)) -> c11(MARK(x1)) MARK(first(first(x0, from(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(first(x0, s(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, 0), x2)) -> c11(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(first(x0, nil), x2)) -> c11(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(first(from(z0), x1), x2)) -> c11(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(s(z0), x1), x2)) -> c11(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(0, x1), x2)) -> c11(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(nil, x1), x2)) -> c11(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(first(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(sel(x0, from(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, s(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, 0), x2)) -> c11(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(sel(x0, nil), x2)) -> c11(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(sel(from(z0), x1), x2)) -> c11(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(s(z0), x1), x2)) -> c11(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(0, x1), x2)) -> c11(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(nil, x1), x2)) -> c11(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(sel(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(s(x0), s(z0))) -> c11(A__FIRST(s(mark(x0)), s(mark(z0))), MARK(s(z0))) MARK(first(s(x0), 0)) -> c11(A__FIRST(s(mark(x0)), 0), MARK(0)) MARK(first(s(x0), nil)) -> c11(A__FIRST(s(mark(x0)), nil), MARK(nil)) MARK(first(s(from(z0)), x1)) -> c11(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(first(z0, z1)), x1)) -> c11(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(sel(z0, z1)), x1)) -> c11(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(cons(z0, z1)), x1)) -> c11(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(s(s(z0)), x1)) -> c11(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(0), x1)) -> c11(A__FIRST(s(0), mark(x1)), MARK(x1)) MARK(first(s(nil), x1)) -> c11(A__FIRST(s(nil), mark(x1)), MARK(x1)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_1, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2, c10_2, c11_2 ---------------------------------------- (265) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing nodes: MARK(first(s(x0), nil)) -> c11(A__FIRST(s(mark(x0)), nil), MARK(nil)) MARK(first(s(x0), 0)) -> c11(A__FIRST(s(mark(x0)), 0), MARK(0)) ---------------------------------------- (266) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(x0, cons(from(z0), x2))) -> c11(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(cons(from(z0), x2))) MARK(first(x0, cons(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(cons(first(z0, z1), x2))) MARK(first(x0, cons(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(cons(sel(z0, z1), x2))) MARK(first(x0, cons(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(cons(cons(z0, z1), x2))) MARK(first(x0, cons(s(z0), x2))) -> c11(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(cons(s(z0), x2))) MARK(first(x0, cons(0, x2))) -> c11(A__FIRST(mark(x0), cons(0, x2)), MARK(cons(0, x2))) MARK(first(x0, cons(nil, x2))) -> c11(A__FIRST(mark(x0), cons(nil, x2)), MARK(cons(nil, x2))) MARK(first(from(z0), cons(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(first(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(s(z0), cons(x1, x2))) -> c11(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(x0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(nil, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(from(from(z0)), x1)) -> c11(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(first(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(sel(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(cons(z0, z1)), x1)) -> c11(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(from(s(z0)), x1)) -> c11(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(0), x1)) -> c11(A__FIRST(a__from(0), mark(x1)), MARK(x1)) MARK(first(from(nil), x1)) -> c11(A__FIRST(a__from(nil), mark(x1)), MARK(x1)) MARK(first(from(x0), s(z0))) -> c11(MARK(s(z0))) MARK(first(from(x0), x1)) -> c11(MARK(x1)) MARK(first(first(x0, from(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(first(x0, s(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, 0), x2)) -> c11(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(first(x0, nil), x2)) -> c11(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(first(from(z0), x1), x2)) -> c11(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(s(z0), x1), x2)) -> c11(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(0, x1), x2)) -> c11(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(nil, x1), x2)) -> c11(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(first(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(sel(x0, from(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, s(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, 0), x2)) -> c11(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(sel(x0, nil), x2)) -> c11(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(sel(from(z0), x1), x2)) -> c11(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(s(z0), x1), x2)) -> c11(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(0, x1), x2)) -> c11(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(nil, x1), x2)) -> c11(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(sel(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(s(x0), s(z0))) -> c11(A__FIRST(s(mark(x0)), s(mark(z0))), MARK(s(z0))) MARK(first(s(from(z0)), x1)) -> c11(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(first(z0, z1)), x1)) -> c11(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(sel(z0, z1)), x1)) -> c11(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(cons(z0, z1)), x1)) -> c11(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(s(s(z0)), x1)) -> c11(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(0), x1)) -> c11(A__FIRST(s(0), mark(x1)), MARK(x1)) MARK(first(s(nil), x1)) -> c11(A__FIRST(s(nil), mark(x1)), MARK(x1)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(x0, cons(from(z0), x2))) -> c11(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(cons(from(z0), x2))) MARK(first(x0, cons(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(cons(first(z0, z1), x2))) MARK(first(x0, cons(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(cons(sel(z0, z1), x2))) MARK(first(x0, cons(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(cons(cons(z0, z1), x2))) MARK(first(x0, cons(s(z0), x2))) -> c11(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(cons(s(z0), x2))) MARK(first(x0, cons(0, x2))) -> c11(A__FIRST(mark(x0), cons(0, x2)), MARK(cons(0, x2))) MARK(first(x0, cons(nil, x2))) -> c11(A__FIRST(mark(x0), cons(nil, x2)), MARK(cons(nil, x2))) MARK(first(from(z0), cons(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(first(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(s(z0), cons(x1, x2))) -> c11(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(x0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(nil, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(from(from(z0)), x1)) -> c11(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(first(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(sel(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(cons(z0, z1)), x1)) -> c11(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(from(s(z0)), x1)) -> c11(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(0), x1)) -> c11(A__FIRST(a__from(0), mark(x1)), MARK(x1)) MARK(first(from(nil), x1)) -> c11(A__FIRST(a__from(nil), mark(x1)), MARK(x1)) MARK(first(from(x0), s(z0))) -> c11(MARK(s(z0))) MARK(first(from(x0), x1)) -> c11(MARK(x1)) MARK(first(first(x0, from(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(first(x0, s(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, 0), x2)) -> c11(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(first(x0, nil), x2)) -> c11(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(first(from(z0), x1), x2)) -> c11(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(s(z0), x1), x2)) -> c11(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(0, x1), x2)) -> c11(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(nil, x1), x2)) -> c11(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(first(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(sel(x0, from(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, s(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, 0), x2)) -> c11(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(sel(x0, nil), x2)) -> c11(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(sel(from(z0), x1), x2)) -> c11(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(s(z0), x1), x2)) -> c11(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(0, x1), x2)) -> c11(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(nil, x1), x2)) -> c11(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(sel(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(s(x0), s(z0))) -> c11(A__FIRST(s(mark(x0)), s(mark(z0))), MARK(s(z0))) MARK(first(s(from(z0)), x1)) -> c11(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(first(z0, z1)), x1)) -> c11(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(sel(z0, z1)), x1)) -> c11(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(cons(z0, z1)), x1)) -> c11(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(s(s(z0)), x1)) -> c11(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(0), x1)) -> c11(A__FIRST(s(0), mark(x1)), MARK(x1)) MARK(first(s(nil), x1)) -> c11(A__FIRST(s(nil), mark(x1)), MARK(x1)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_1, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2, c10_2, c11_2 ---------------------------------------- (267) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (268) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(x0, cons(from(z0), x2))) -> c11(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(cons(from(z0), x2))) MARK(first(x0, cons(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(cons(first(z0, z1), x2))) MARK(first(x0, cons(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(cons(sel(z0, z1), x2))) MARK(first(x0, cons(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(cons(cons(z0, z1), x2))) MARK(first(x0, cons(s(z0), x2))) -> c11(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(cons(s(z0), x2))) MARK(first(x0, cons(0, x2))) -> c11(A__FIRST(mark(x0), cons(0, x2)), MARK(cons(0, x2))) MARK(first(x0, cons(nil, x2))) -> c11(A__FIRST(mark(x0), cons(nil, x2)), MARK(cons(nil, x2))) MARK(first(from(z0), cons(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(first(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(s(z0), cons(x1, x2))) -> c11(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(x0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(nil, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(from(from(z0)), x1)) -> c11(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(first(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(sel(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(cons(z0, z1)), x1)) -> c11(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(from(s(z0)), x1)) -> c11(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(0), x1)) -> c11(A__FIRST(a__from(0), mark(x1)), MARK(x1)) MARK(first(from(nil), x1)) -> c11(A__FIRST(a__from(nil), mark(x1)), MARK(x1)) MARK(first(from(x0), s(z0))) -> c11(MARK(s(z0))) MARK(first(from(x0), x1)) -> c11(MARK(x1)) MARK(first(first(x0, from(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(first(x0, s(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, 0), x2)) -> c11(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(first(x0, nil), x2)) -> c11(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(first(from(z0), x1), x2)) -> c11(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(s(z0), x1), x2)) -> c11(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(0, x1), x2)) -> c11(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(nil, x1), x2)) -> c11(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(first(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(sel(x0, from(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, s(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, 0), x2)) -> c11(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(sel(x0, nil), x2)) -> c11(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(sel(from(z0), x1), x2)) -> c11(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(s(z0), x1), x2)) -> c11(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(0, x1), x2)) -> c11(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(nil, x1), x2)) -> c11(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(sel(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(s(from(z0)), x1)) -> c11(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(first(z0, z1)), x1)) -> c11(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(sel(z0, z1)), x1)) -> c11(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(cons(z0, z1)), x1)) -> c11(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(s(s(z0)), x1)) -> c11(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(0), x1)) -> c11(A__FIRST(s(0), mark(x1)), MARK(x1)) MARK(first(s(nil), x1)) -> c11(A__FIRST(s(nil), mark(x1)), MARK(x1)) MARK(first(s(x0), s(z0))) -> c11(MARK(s(z0))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(x0, cons(from(z0), x2))) -> c11(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(cons(from(z0), x2))) MARK(first(x0, cons(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(cons(first(z0, z1), x2))) MARK(first(x0, cons(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(cons(sel(z0, z1), x2))) MARK(first(x0, cons(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(cons(cons(z0, z1), x2))) MARK(first(x0, cons(s(z0), x2))) -> c11(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(cons(s(z0), x2))) MARK(first(x0, cons(0, x2))) -> c11(A__FIRST(mark(x0), cons(0, x2)), MARK(cons(0, x2))) MARK(first(x0, cons(nil, x2))) -> c11(A__FIRST(mark(x0), cons(nil, x2)), MARK(cons(nil, x2))) MARK(first(from(z0), cons(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(first(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(s(z0), cons(x1, x2))) -> c11(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(x0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(nil, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(from(from(z0)), x1)) -> c11(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(first(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(sel(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(cons(z0, z1)), x1)) -> c11(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(from(s(z0)), x1)) -> c11(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(0), x1)) -> c11(A__FIRST(a__from(0), mark(x1)), MARK(x1)) MARK(first(from(nil), x1)) -> c11(A__FIRST(a__from(nil), mark(x1)), MARK(x1)) MARK(first(from(x0), s(z0))) -> c11(MARK(s(z0))) MARK(first(from(x0), x1)) -> c11(MARK(x1)) MARK(first(first(x0, from(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(first(x0, s(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, 0), x2)) -> c11(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(first(x0, nil), x2)) -> c11(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(first(from(z0), x1), x2)) -> c11(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(s(z0), x1), x2)) -> c11(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(0, x1), x2)) -> c11(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(nil, x1), x2)) -> c11(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(first(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(sel(x0, from(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, s(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, 0), x2)) -> c11(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(sel(x0, nil), x2)) -> c11(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(sel(from(z0), x1), x2)) -> c11(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(s(z0), x1), x2)) -> c11(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(0, x1), x2)) -> c11(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(nil, x1), x2)) -> c11(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(sel(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(s(from(z0)), x1)) -> c11(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(first(z0, z1)), x1)) -> c11(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(sel(z0, z1)), x1)) -> c11(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(cons(z0, z1)), x1)) -> c11(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(s(s(z0)), x1)) -> c11(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(0), x1)) -> c11(A__FIRST(s(0), mark(x1)), MARK(x1)) MARK(first(s(nil), x1)) -> c11(A__FIRST(s(nil), mark(x1)), MARK(x1)) MARK(first(s(x0), s(z0))) -> c11(MARK(s(z0))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_1, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2, c10_2, c11_2 ---------------------------------------- (269) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(sel(x0, from(z0))) -> c12(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) by MARK(sel(x0, from(x1))) -> c12(A__SEL(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(sel(x0, from(x1))) -> c12(A__SEL(mark(x0), from(mark(x1))), MARK(x0)) MARK(sel(x0, from(from(z0)))) -> c12(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(sel(x0, from(first(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, from(sel(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, from(cons(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(sel(x0, from(s(z0)))) -> c12(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(sel(x0, from(0))) -> c12(A__SEL(mark(x0), a__from(0)), MARK(x0)) MARK(sel(x0, from(nil))) -> c12(A__SEL(mark(x0), a__from(nil)), MARK(x0)) MARK(sel(from(z0), from(x1))) -> c12(A__SEL(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(sel(first(z0, z1), from(x1))) -> c12(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), from(x1))) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(sel(cons(z0, z1), from(x1))) -> c12(A__SEL(cons(mark(z0), z1), a__from(mark(x1))), MARK(cons(z0, z1))) MARK(sel(s(z0), from(x1))) -> c12(A__SEL(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(sel(0, from(x1))) -> c12(A__SEL(0, a__from(mark(x1))), MARK(0)) MARK(sel(nil, from(x1))) -> c12(A__SEL(nil, a__from(mark(x1))), MARK(nil)) ---------------------------------------- (270) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(x0, cons(from(z0), x2))) -> c11(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(cons(from(z0), x2))) MARK(first(x0, cons(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(cons(first(z0, z1), x2))) MARK(first(x0, cons(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(cons(sel(z0, z1), x2))) MARK(first(x0, cons(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(cons(cons(z0, z1), x2))) MARK(first(x0, cons(s(z0), x2))) -> c11(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(cons(s(z0), x2))) MARK(first(x0, cons(0, x2))) -> c11(A__FIRST(mark(x0), cons(0, x2)), MARK(cons(0, x2))) MARK(first(x0, cons(nil, x2))) -> c11(A__FIRST(mark(x0), cons(nil, x2)), MARK(cons(nil, x2))) MARK(first(from(z0), cons(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(first(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(s(z0), cons(x1, x2))) -> c11(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(x0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(nil, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(from(from(z0)), x1)) -> c11(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(first(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(sel(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(cons(z0, z1)), x1)) -> c11(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(from(s(z0)), x1)) -> c11(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(0), x1)) -> c11(A__FIRST(a__from(0), mark(x1)), MARK(x1)) MARK(first(from(nil), x1)) -> c11(A__FIRST(a__from(nil), mark(x1)), MARK(x1)) MARK(first(from(x0), s(z0))) -> c11(MARK(s(z0))) MARK(first(from(x0), x1)) -> c11(MARK(x1)) MARK(first(first(x0, from(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(first(x0, s(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, 0), x2)) -> c11(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(first(x0, nil), x2)) -> c11(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(first(from(z0), x1), x2)) -> c11(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(s(z0), x1), x2)) -> c11(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(0, x1), x2)) -> c11(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(nil, x1), x2)) -> c11(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(first(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(sel(x0, from(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, s(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, 0), x2)) -> c11(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(sel(x0, nil), x2)) -> c11(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(sel(from(z0), x1), x2)) -> c11(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(s(z0), x1), x2)) -> c11(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(0, x1), x2)) -> c11(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(nil, x1), x2)) -> c11(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(sel(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(s(from(z0)), x1)) -> c11(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(first(z0, z1)), x1)) -> c11(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(sel(z0, z1)), x1)) -> c11(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(cons(z0, z1)), x1)) -> c11(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(s(s(z0)), x1)) -> c11(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(0), x1)) -> c11(A__FIRST(s(0), mark(x1)), MARK(x1)) MARK(first(s(nil), x1)) -> c11(A__FIRST(s(nil), mark(x1)), MARK(x1)) MARK(first(s(x0), s(z0))) -> c11(MARK(s(z0))) MARK(sel(x0, from(x1))) -> c12(A__SEL(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(sel(x0, from(x1))) -> c12(A__SEL(mark(x0), from(mark(x1))), MARK(x0)) MARK(sel(x0, from(from(z0)))) -> c12(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(sel(x0, from(first(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, from(sel(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, from(cons(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(sel(x0, from(s(z0)))) -> c12(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(sel(x0, from(0))) -> c12(A__SEL(mark(x0), a__from(0)), MARK(x0)) MARK(sel(x0, from(nil))) -> c12(A__SEL(mark(x0), a__from(nil)), MARK(x0)) MARK(sel(from(z0), from(x1))) -> c12(A__SEL(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(sel(first(z0, z1), from(x1))) -> c12(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), from(x1))) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(sel(cons(z0, z1), from(x1))) -> c12(A__SEL(cons(mark(z0), z1), a__from(mark(x1))), MARK(cons(z0, z1))) MARK(sel(s(z0), from(x1))) -> c12(A__SEL(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(sel(0, from(x1))) -> c12(A__SEL(0, a__from(mark(x1))), MARK(0)) MARK(sel(nil, from(x1))) -> c12(A__SEL(nil, a__from(mark(x1))), MARK(nil)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(x0, cons(from(z0), x2))) -> c11(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(cons(from(z0), x2))) MARK(first(x0, cons(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(cons(first(z0, z1), x2))) MARK(first(x0, cons(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(cons(sel(z0, z1), x2))) MARK(first(x0, cons(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(cons(cons(z0, z1), x2))) MARK(first(x0, cons(s(z0), x2))) -> c11(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(cons(s(z0), x2))) MARK(first(x0, cons(0, x2))) -> c11(A__FIRST(mark(x0), cons(0, x2)), MARK(cons(0, x2))) MARK(first(x0, cons(nil, x2))) -> c11(A__FIRST(mark(x0), cons(nil, x2)), MARK(cons(nil, x2))) MARK(first(from(z0), cons(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(first(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(s(z0), cons(x1, x2))) -> c11(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(x0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(nil, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(from(from(z0)), x1)) -> c11(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(first(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(sel(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(cons(z0, z1)), x1)) -> c11(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(from(s(z0)), x1)) -> c11(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(0), x1)) -> c11(A__FIRST(a__from(0), mark(x1)), MARK(x1)) MARK(first(from(nil), x1)) -> c11(A__FIRST(a__from(nil), mark(x1)), MARK(x1)) MARK(first(from(x0), s(z0))) -> c11(MARK(s(z0))) MARK(first(from(x0), x1)) -> c11(MARK(x1)) MARK(first(first(x0, from(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(first(x0, s(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, 0), x2)) -> c11(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(first(x0, nil), x2)) -> c11(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(first(from(z0), x1), x2)) -> c11(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(s(z0), x1), x2)) -> c11(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(0, x1), x2)) -> c11(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(nil, x1), x2)) -> c11(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(first(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(sel(x0, from(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, s(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, 0), x2)) -> c11(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(sel(x0, nil), x2)) -> c11(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(sel(from(z0), x1), x2)) -> c11(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(s(z0), x1), x2)) -> c11(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(0, x1), x2)) -> c11(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(nil, x1), x2)) -> c11(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(sel(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(s(from(z0)), x1)) -> c11(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(first(z0, z1)), x1)) -> c11(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(sel(z0, z1)), x1)) -> c11(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(cons(z0, z1)), x1)) -> c11(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(s(s(z0)), x1)) -> c11(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(0), x1)) -> c11(A__FIRST(s(0), mark(x1)), MARK(x1)) MARK(first(s(nil), x1)) -> c11(A__FIRST(s(nil), mark(x1)), MARK(x1)) MARK(first(s(x0), s(z0))) -> c11(MARK(s(z0))) MARK(sel(x0, from(x1))) -> c12(A__SEL(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(sel(x0, from(x1))) -> c12(A__SEL(mark(x0), from(mark(x1))), MARK(x0)) MARK(sel(x0, from(from(z0)))) -> c12(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(sel(x0, from(first(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, from(sel(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, from(cons(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(sel(x0, from(s(z0)))) -> c12(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(sel(x0, from(0))) -> c12(A__SEL(mark(x0), a__from(0)), MARK(x0)) MARK(sel(x0, from(nil))) -> c12(A__SEL(mark(x0), a__from(nil)), MARK(x0)) MARK(sel(from(z0), from(x1))) -> c12(A__SEL(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(sel(first(z0, z1), from(x1))) -> c12(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), from(x1))) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(sel(cons(z0, z1), from(x1))) -> c12(A__SEL(cons(mark(z0), z1), a__from(mark(x1))), MARK(cons(z0, z1))) MARK(sel(s(z0), from(x1))) -> c12(A__SEL(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(sel(0, from(x1))) -> c12(A__SEL(0, a__from(mark(x1))), MARK(0)) MARK(sel(nil, from(x1))) -> c12(A__SEL(nil, a__from(mark(x1))), MARK(nil)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_1, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2, c10_2, c11_2 ---------------------------------------- (271) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing nodes: MARK(sel(nil, from(x1))) -> c12(A__SEL(nil, a__from(mark(x1))), MARK(nil)) ---------------------------------------- (272) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(x0, cons(from(z0), x2))) -> c11(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(cons(from(z0), x2))) MARK(first(x0, cons(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(cons(first(z0, z1), x2))) MARK(first(x0, cons(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(cons(sel(z0, z1), x2))) MARK(first(x0, cons(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(cons(cons(z0, z1), x2))) MARK(first(x0, cons(s(z0), x2))) -> c11(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(cons(s(z0), x2))) MARK(first(x0, cons(0, x2))) -> c11(A__FIRST(mark(x0), cons(0, x2)), MARK(cons(0, x2))) MARK(first(x0, cons(nil, x2))) -> c11(A__FIRST(mark(x0), cons(nil, x2)), MARK(cons(nil, x2))) MARK(first(from(z0), cons(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(first(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(s(z0), cons(x1, x2))) -> c11(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(x0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(nil, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(from(from(z0)), x1)) -> c11(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(first(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(sel(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(cons(z0, z1)), x1)) -> c11(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(from(s(z0)), x1)) -> c11(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(0), x1)) -> c11(A__FIRST(a__from(0), mark(x1)), MARK(x1)) MARK(first(from(nil), x1)) -> c11(A__FIRST(a__from(nil), mark(x1)), MARK(x1)) MARK(first(from(x0), s(z0))) -> c11(MARK(s(z0))) MARK(first(from(x0), x1)) -> c11(MARK(x1)) MARK(first(first(x0, from(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(first(x0, s(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, 0), x2)) -> c11(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(first(x0, nil), x2)) -> c11(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(first(from(z0), x1), x2)) -> c11(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(s(z0), x1), x2)) -> c11(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(0, x1), x2)) -> c11(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(nil, x1), x2)) -> c11(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(first(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(sel(x0, from(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, s(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, 0), x2)) -> c11(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(sel(x0, nil), x2)) -> c11(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(sel(from(z0), x1), x2)) -> c11(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(s(z0), x1), x2)) -> c11(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(0, x1), x2)) -> c11(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(nil, x1), x2)) -> c11(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(sel(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(s(from(z0)), x1)) -> c11(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(first(z0, z1)), x1)) -> c11(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(sel(z0, z1)), x1)) -> c11(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(cons(z0, z1)), x1)) -> c11(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(s(s(z0)), x1)) -> c11(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(0), x1)) -> c11(A__FIRST(s(0), mark(x1)), MARK(x1)) MARK(first(s(nil), x1)) -> c11(A__FIRST(s(nil), mark(x1)), MARK(x1)) MARK(first(s(x0), s(z0))) -> c11(MARK(s(z0))) MARK(sel(x0, from(x1))) -> c12(A__SEL(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(sel(x0, from(x1))) -> c12(A__SEL(mark(x0), from(mark(x1))), MARK(x0)) MARK(sel(x0, from(from(z0)))) -> c12(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(sel(x0, from(first(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, from(sel(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, from(cons(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(sel(x0, from(s(z0)))) -> c12(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(sel(x0, from(0))) -> c12(A__SEL(mark(x0), a__from(0)), MARK(x0)) MARK(sel(x0, from(nil))) -> c12(A__SEL(mark(x0), a__from(nil)), MARK(x0)) MARK(sel(from(z0), from(x1))) -> c12(A__SEL(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(sel(first(z0, z1), from(x1))) -> c12(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), from(x1))) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(sel(cons(z0, z1), from(x1))) -> c12(A__SEL(cons(mark(z0), z1), a__from(mark(x1))), MARK(cons(z0, z1))) MARK(sel(s(z0), from(x1))) -> c12(A__SEL(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(sel(0, from(x1))) -> c12(A__SEL(0, a__from(mark(x1))), MARK(0)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(x0, cons(from(z0), x2))) -> c11(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(cons(from(z0), x2))) MARK(first(x0, cons(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(cons(first(z0, z1), x2))) MARK(first(x0, cons(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(cons(sel(z0, z1), x2))) MARK(first(x0, cons(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(cons(cons(z0, z1), x2))) MARK(first(x0, cons(s(z0), x2))) -> c11(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(cons(s(z0), x2))) MARK(first(x0, cons(0, x2))) -> c11(A__FIRST(mark(x0), cons(0, x2)), MARK(cons(0, x2))) MARK(first(x0, cons(nil, x2))) -> c11(A__FIRST(mark(x0), cons(nil, x2)), MARK(cons(nil, x2))) MARK(first(from(z0), cons(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(first(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(s(z0), cons(x1, x2))) -> c11(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(x0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(nil, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(from(from(z0)), x1)) -> c11(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(first(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(sel(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(cons(z0, z1)), x1)) -> c11(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(from(s(z0)), x1)) -> c11(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(0), x1)) -> c11(A__FIRST(a__from(0), mark(x1)), MARK(x1)) MARK(first(from(nil), x1)) -> c11(A__FIRST(a__from(nil), mark(x1)), MARK(x1)) MARK(first(from(x0), s(z0))) -> c11(MARK(s(z0))) MARK(first(from(x0), x1)) -> c11(MARK(x1)) MARK(first(first(x0, from(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(first(x0, s(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, 0), x2)) -> c11(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(first(x0, nil), x2)) -> c11(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(first(from(z0), x1), x2)) -> c11(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(s(z0), x1), x2)) -> c11(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(0, x1), x2)) -> c11(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(nil, x1), x2)) -> c11(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(first(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(sel(x0, from(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, s(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, 0), x2)) -> c11(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(sel(x0, nil), x2)) -> c11(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(sel(from(z0), x1), x2)) -> c11(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(s(z0), x1), x2)) -> c11(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(0, x1), x2)) -> c11(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(nil, x1), x2)) -> c11(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(sel(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(s(from(z0)), x1)) -> c11(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(first(z0, z1)), x1)) -> c11(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(sel(z0, z1)), x1)) -> c11(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(cons(z0, z1)), x1)) -> c11(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(s(s(z0)), x1)) -> c11(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(0), x1)) -> c11(A__FIRST(s(0), mark(x1)), MARK(x1)) MARK(first(s(nil), x1)) -> c11(A__FIRST(s(nil), mark(x1)), MARK(x1)) MARK(first(s(x0), s(z0))) -> c11(MARK(s(z0))) MARK(sel(x0, from(x1))) -> c12(A__SEL(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(sel(x0, from(x1))) -> c12(A__SEL(mark(x0), from(mark(x1))), MARK(x0)) MARK(sel(x0, from(from(z0)))) -> c12(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(sel(x0, from(first(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, from(sel(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, from(cons(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(sel(x0, from(s(z0)))) -> c12(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(sel(x0, from(0))) -> c12(A__SEL(mark(x0), a__from(0)), MARK(x0)) MARK(sel(x0, from(nil))) -> c12(A__SEL(mark(x0), a__from(nil)), MARK(x0)) MARK(sel(from(z0), from(x1))) -> c12(A__SEL(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(sel(first(z0, z1), from(x1))) -> c12(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), from(x1))) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(sel(cons(z0, z1), from(x1))) -> c12(A__SEL(cons(mark(z0), z1), a__from(mark(x1))), MARK(cons(z0, z1))) MARK(sel(s(z0), from(x1))) -> c12(A__SEL(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(sel(0, from(x1))) -> c12(A__SEL(0, a__from(mark(x1))), MARK(0)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_1, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2, c10_2, c11_2 ---------------------------------------- (273) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 3 trailing tuple parts ---------------------------------------- (274) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(x0, cons(from(z0), x2))) -> c11(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(cons(from(z0), x2))) MARK(first(x0, cons(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(cons(first(z0, z1), x2))) MARK(first(x0, cons(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(cons(sel(z0, z1), x2))) MARK(first(x0, cons(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(cons(cons(z0, z1), x2))) MARK(first(x0, cons(s(z0), x2))) -> c11(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(cons(s(z0), x2))) MARK(first(x0, cons(0, x2))) -> c11(A__FIRST(mark(x0), cons(0, x2)), MARK(cons(0, x2))) MARK(first(x0, cons(nil, x2))) -> c11(A__FIRST(mark(x0), cons(nil, x2)), MARK(cons(nil, x2))) MARK(first(from(z0), cons(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(first(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(s(z0), cons(x1, x2))) -> c11(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(x0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(nil, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(from(from(z0)), x1)) -> c11(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(first(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(sel(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(cons(z0, z1)), x1)) -> c11(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(from(s(z0)), x1)) -> c11(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(0), x1)) -> c11(A__FIRST(a__from(0), mark(x1)), MARK(x1)) MARK(first(from(nil), x1)) -> c11(A__FIRST(a__from(nil), mark(x1)), MARK(x1)) MARK(first(from(x0), s(z0))) -> c11(MARK(s(z0))) MARK(first(from(x0), x1)) -> c11(MARK(x1)) MARK(first(first(x0, from(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(first(x0, s(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, 0), x2)) -> c11(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(first(x0, nil), x2)) -> c11(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(first(from(z0), x1), x2)) -> c11(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(s(z0), x1), x2)) -> c11(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(0, x1), x2)) -> c11(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(nil, x1), x2)) -> c11(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(first(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(sel(x0, from(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, s(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, 0), x2)) -> c11(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(sel(x0, nil), x2)) -> c11(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(sel(from(z0), x1), x2)) -> c11(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(s(z0), x1), x2)) -> c11(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(0, x1), x2)) -> c11(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(nil, x1), x2)) -> c11(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(sel(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(s(from(z0)), x1)) -> c11(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(first(z0, z1)), x1)) -> c11(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(sel(z0, z1)), x1)) -> c11(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(cons(z0, z1)), x1)) -> c11(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(s(s(z0)), x1)) -> c11(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(0), x1)) -> c11(A__FIRST(s(0), mark(x1)), MARK(x1)) MARK(first(s(nil), x1)) -> c11(A__FIRST(s(nil), mark(x1)), MARK(x1)) MARK(first(s(x0), s(z0))) -> c11(MARK(s(z0))) MARK(sel(x0, from(x1))) -> c12(A__SEL(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(sel(x0, from(from(z0)))) -> c12(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(sel(x0, from(first(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, from(sel(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, from(cons(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(sel(x0, from(s(z0)))) -> c12(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(sel(x0, from(0))) -> c12(A__SEL(mark(x0), a__from(0)), MARK(x0)) MARK(sel(x0, from(nil))) -> c12(A__SEL(mark(x0), a__from(nil)), MARK(x0)) MARK(sel(from(z0), from(x1))) -> c12(A__SEL(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(sel(first(z0, z1), from(x1))) -> c12(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), from(x1))) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(sel(s(z0), from(x1))) -> c12(A__SEL(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(sel(x0, from(x1))) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), from(x1))) -> c12(MARK(cons(z0, z1))) MARK(sel(0, from(x1))) -> c12(A__SEL(0, a__from(mark(x1)))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(x0, cons(from(z0), x2))) -> c11(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(cons(from(z0), x2))) MARK(first(x0, cons(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(cons(first(z0, z1), x2))) MARK(first(x0, cons(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(cons(sel(z0, z1), x2))) MARK(first(x0, cons(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(cons(cons(z0, z1), x2))) MARK(first(x0, cons(s(z0), x2))) -> c11(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(cons(s(z0), x2))) MARK(first(x0, cons(0, x2))) -> c11(A__FIRST(mark(x0), cons(0, x2)), MARK(cons(0, x2))) MARK(first(x0, cons(nil, x2))) -> c11(A__FIRST(mark(x0), cons(nil, x2)), MARK(cons(nil, x2))) MARK(first(from(z0), cons(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(first(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(s(z0), cons(x1, x2))) -> c11(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(x0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(nil, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(from(from(z0)), x1)) -> c11(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(first(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(sel(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(cons(z0, z1)), x1)) -> c11(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(from(s(z0)), x1)) -> c11(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(0), x1)) -> c11(A__FIRST(a__from(0), mark(x1)), MARK(x1)) MARK(first(from(nil), x1)) -> c11(A__FIRST(a__from(nil), mark(x1)), MARK(x1)) MARK(first(from(x0), s(z0))) -> c11(MARK(s(z0))) MARK(first(from(x0), x1)) -> c11(MARK(x1)) MARK(first(first(x0, from(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(first(x0, s(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, 0), x2)) -> c11(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(first(x0, nil), x2)) -> c11(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(first(from(z0), x1), x2)) -> c11(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(s(z0), x1), x2)) -> c11(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(0, x1), x2)) -> c11(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(nil, x1), x2)) -> c11(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(first(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(sel(x0, from(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, s(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, 0), x2)) -> c11(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(sel(x0, nil), x2)) -> c11(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(sel(from(z0), x1), x2)) -> c11(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(s(z0), x1), x2)) -> c11(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(0, x1), x2)) -> c11(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(nil, x1), x2)) -> c11(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(sel(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(s(from(z0)), x1)) -> c11(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(first(z0, z1)), x1)) -> c11(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(sel(z0, z1)), x1)) -> c11(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(cons(z0, z1)), x1)) -> c11(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(s(s(z0)), x1)) -> c11(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(0), x1)) -> c11(A__FIRST(s(0), mark(x1)), MARK(x1)) MARK(first(s(nil), x1)) -> c11(A__FIRST(s(nil), mark(x1)), MARK(x1)) MARK(first(s(x0), s(z0))) -> c11(MARK(s(z0))) MARK(sel(x0, from(x1))) -> c12(A__SEL(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(sel(x0, from(from(z0)))) -> c12(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(sel(x0, from(first(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, from(sel(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, from(cons(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(sel(x0, from(s(z0)))) -> c12(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(sel(x0, from(0))) -> c12(A__SEL(mark(x0), a__from(0)), MARK(x0)) MARK(sel(x0, from(nil))) -> c12(A__SEL(mark(x0), a__from(nil)), MARK(x0)) MARK(sel(from(z0), from(x1))) -> c12(A__SEL(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(sel(first(z0, z1), from(x1))) -> c12(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), from(x1))) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(sel(s(z0), from(x1))) -> c12(A__SEL(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(sel(x0, from(x1))) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), from(x1))) -> c12(MARK(cons(z0, z1))) MARK(sel(0, from(x1))) -> c12(A__SEL(0, a__from(mark(x1)))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_1, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2, c10_2, c11_2 ---------------------------------------- (275) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(sel(x0, first(z0, z1))) -> c12(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(x0)) by MARK(sel(x0, first(x1, x2))) -> c12(A__SEL(mark(x0), first(mark(x1), mark(x2))), MARK(x0)) MARK(sel(x0, first(x1, from(z0)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(sel(x0, first(x1, first(z0, z1)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, first(x1, sel(z0, z1)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, first(x1, cons(z0, z1)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(sel(x0, first(x1, s(z0)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(sel(x0, first(x1, 0))) -> c12(A__SEL(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(sel(x0, first(x1, nil))) -> c12(A__SEL(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(sel(x0, first(from(z0), x2))) -> c12(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(sel(x0, first(first(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(sel(x0, first(sel(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(sel(x0, first(cons(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(sel(x0, first(s(z0), x2))) -> c12(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(sel(x0, first(0, x2))) -> c12(A__SEL(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(sel(x0, first(nil, x2))) -> c12(A__SEL(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(sel(from(z0), first(x1, x2))) -> c12(A__SEL(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(sel(first(z0, z1), first(x1, x2))) -> c12(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), first(x1, x2))) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(sel(cons(z0, z1), first(x1, x2))) -> c12(A__SEL(cons(mark(z0), z1), a__first(mark(x1), mark(x2))), MARK(cons(z0, z1))) MARK(sel(s(z0), first(x1, x2))) -> c12(A__SEL(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(sel(0, first(x1, x2))) -> c12(A__SEL(0, a__first(mark(x1), mark(x2))), MARK(0)) MARK(sel(nil, first(x1, x2))) -> c12(A__SEL(nil, a__first(mark(x1), mark(x2))), MARK(nil)) ---------------------------------------- (276) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(x0, cons(from(z0), x2))) -> c11(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(cons(from(z0), x2))) MARK(first(x0, cons(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(cons(first(z0, z1), x2))) MARK(first(x0, cons(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(cons(sel(z0, z1), x2))) MARK(first(x0, cons(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(cons(cons(z0, z1), x2))) MARK(first(x0, cons(s(z0), x2))) -> c11(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(cons(s(z0), x2))) MARK(first(x0, cons(0, x2))) -> c11(A__FIRST(mark(x0), cons(0, x2)), MARK(cons(0, x2))) MARK(first(x0, cons(nil, x2))) -> c11(A__FIRST(mark(x0), cons(nil, x2)), MARK(cons(nil, x2))) MARK(first(from(z0), cons(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(first(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(s(z0), cons(x1, x2))) -> c11(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(x0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(nil, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(from(from(z0)), x1)) -> c11(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(first(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(sel(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(cons(z0, z1)), x1)) -> c11(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(from(s(z0)), x1)) -> c11(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(0), x1)) -> c11(A__FIRST(a__from(0), mark(x1)), MARK(x1)) MARK(first(from(nil), x1)) -> c11(A__FIRST(a__from(nil), mark(x1)), MARK(x1)) MARK(first(from(x0), s(z0))) -> c11(MARK(s(z0))) MARK(first(from(x0), x1)) -> c11(MARK(x1)) MARK(first(first(x0, from(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(first(x0, s(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, 0), x2)) -> c11(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(first(x0, nil), x2)) -> c11(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(first(from(z0), x1), x2)) -> c11(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(s(z0), x1), x2)) -> c11(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(0, x1), x2)) -> c11(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(nil, x1), x2)) -> c11(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(first(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(sel(x0, from(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, s(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, 0), x2)) -> c11(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(sel(x0, nil), x2)) -> c11(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(sel(from(z0), x1), x2)) -> c11(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(s(z0), x1), x2)) -> c11(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(0, x1), x2)) -> c11(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(nil, x1), x2)) -> c11(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(sel(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(s(from(z0)), x1)) -> c11(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(first(z0, z1)), x1)) -> c11(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(sel(z0, z1)), x1)) -> c11(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(cons(z0, z1)), x1)) -> c11(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(s(s(z0)), x1)) -> c11(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(0), x1)) -> c11(A__FIRST(s(0), mark(x1)), MARK(x1)) MARK(first(s(nil), x1)) -> c11(A__FIRST(s(nil), mark(x1)), MARK(x1)) MARK(first(s(x0), s(z0))) -> c11(MARK(s(z0))) MARK(sel(x0, from(x1))) -> c12(A__SEL(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(sel(x0, from(from(z0)))) -> c12(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(sel(x0, from(first(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, from(sel(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, from(cons(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(sel(x0, from(s(z0)))) -> c12(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(sel(x0, from(0))) -> c12(A__SEL(mark(x0), a__from(0)), MARK(x0)) MARK(sel(x0, from(nil))) -> c12(A__SEL(mark(x0), a__from(nil)), MARK(x0)) MARK(sel(from(z0), from(x1))) -> c12(A__SEL(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(sel(first(z0, z1), from(x1))) -> c12(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), from(x1))) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(sel(s(z0), from(x1))) -> c12(A__SEL(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(sel(x0, from(x1))) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), from(x1))) -> c12(MARK(cons(z0, z1))) MARK(sel(0, from(x1))) -> c12(A__SEL(0, a__from(mark(x1)))) MARK(sel(x0, first(x1, x2))) -> c12(A__SEL(mark(x0), first(mark(x1), mark(x2))), MARK(x0)) MARK(sel(x0, first(x1, from(z0)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(sel(x0, first(x1, first(z0, z1)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, first(x1, sel(z0, z1)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, first(x1, cons(z0, z1)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(sel(x0, first(x1, s(z0)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(sel(x0, first(x1, 0))) -> c12(A__SEL(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(sel(x0, first(x1, nil))) -> c12(A__SEL(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(sel(x0, first(from(z0), x2))) -> c12(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(sel(x0, first(first(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(sel(x0, first(sel(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(sel(x0, first(cons(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(sel(x0, first(s(z0), x2))) -> c12(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(sel(x0, first(0, x2))) -> c12(A__SEL(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(sel(x0, first(nil, x2))) -> c12(A__SEL(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(sel(from(z0), first(x1, x2))) -> c12(A__SEL(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(sel(first(z0, z1), first(x1, x2))) -> c12(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), first(x1, x2))) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(sel(cons(z0, z1), first(x1, x2))) -> c12(A__SEL(cons(mark(z0), z1), a__first(mark(x1), mark(x2))), MARK(cons(z0, z1))) MARK(sel(s(z0), first(x1, x2))) -> c12(A__SEL(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(sel(0, first(x1, x2))) -> c12(A__SEL(0, a__first(mark(x1), mark(x2))), MARK(0)) MARK(sel(nil, first(x1, x2))) -> c12(A__SEL(nil, a__first(mark(x1), mark(x2))), MARK(nil)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(x0, cons(from(z0), x2))) -> c11(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(cons(from(z0), x2))) MARK(first(x0, cons(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(cons(first(z0, z1), x2))) MARK(first(x0, cons(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(cons(sel(z0, z1), x2))) MARK(first(x0, cons(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(cons(cons(z0, z1), x2))) MARK(first(x0, cons(s(z0), x2))) -> c11(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(cons(s(z0), x2))) MARK(first(x0, cons(0, x2))) -> c11(A__FIRST(mark(x0), cons(0, x2)), MARK(cons(0, x2))) MARK(first(x0, cons(nil, x2))) -> c11(A__FIRST(mark(x0), cons(nil, x2)), MARK(cons(nil, x2))) MARK(first(from(z0), cons(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(first(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(s(z0), cons(x1, x2))) -> c11(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(x0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(nil, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(from(from(z0)), x1)) -> c11(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(first(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(sel(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(cons(z0, z1)), x1)) -> c11(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(from(s(z0)), x1)) -> c11(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(0), x1)) -> c11(A__FIRST(a__from(0), mark(x1)), MARK(x1)) MARK(first(from(nil), x1)) -> c11(A__FIRST(a__from(nil), mark(x1)), MARK(x1)) MARK(first(from(x0), s(z0))) -> c11(MARK(s(z0))) MARK(first(from(x0), x1)) -> c11(MARK(x1)) MARK(first(first(x0, from(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(first(x0, s(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, 0), x2)) -> c11(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(first(x0, nil), x2)) -> c11(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(first(from(z0), x1), x2)) -> c11(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(s(z0), x1), x2)) -> c11(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(0, x1), x2)) -> c11(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(nil, x1), x2)) -> c11(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(first(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(sel(x0, from(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, s(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, 0), x2)) -> c11(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(sel(x0, nil), x2)) -> c11(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(sel(from(z0), x1), x2)) -> c11(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(s(z0), x1), x2)) -> c11(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(0, x1), x2)) -> c11(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(nil, x1), x2)) -> c11(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(sel(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(s(from(z0)), x1)) -> c11(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(first(z0, z1)), x1)) -> c11(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(sel(z0, z1)), x1)) -> c11(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(cons(z0, z1)), x1)) -> c11(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(s(s(z0)), x1)) -> c11(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(0), x1)) -> c11(A__FIRST(s(0), mark(x1)), MARK(x1)) MARK(first(s(nil), x1)) -> c11(A__FIRST(s(nil), mark(x1)), MARK(x1)) MARK(first(s(x0), s(z0))) -> c11(MARK(s(z0))) MARK(sel(x0, from(x1))) -> c12(A__SEL(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(sel(x0, from(from(z0)))) -> c12(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(sel(x0, from(first(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, from(sel(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, from(cons(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(sel(x0, from(s(z0)))) -> c12(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(sel(x0, from(0))) -> c12(A__SEL(mark(x0), a__from(0)), MARK(x0)) MARK(sel(x0, from(nil))) -> c12(A__SEL(mark(x0), a__from(nil)), MARK(x0)) MARK(sel(from(z0), from(x1))) -> c12(A__SEL(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(sel(first(z0, z1), from(x1))) -> c12(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), from(x1))) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(sel(s(z0), from(x1))) -> c12(A__SEL(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(sel(x0, from(x1))) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), from(x1))) -> c12(MARK(cons(z0, z1))) MARK(sel(0, from(x1))) -> c12(A__SEL(0, a__from(mark(x1)))) MARK(sel(x0, first(x1, x2))) -> c12(A__SEL(mark(x0), first(mark(x1), mark(x2))), MARK(x0)) MARK(sel(x0, first(x1, from(z0)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(sel(x0, first(x1, first(z0, z1)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, first(x1, sel(z0, z1)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, first(x1, cons(z0, z1)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(sel(x0, first(x1, s(z0)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(sel(x0, first(x1, 0))) -> c12(A__SEL(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(sel(x0, first(x1, nil))) -> c12(A__SEL(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(sel(x0, first(from(z0), x2))) -> c12(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(sel(x0, first(first(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(sel(x0, first(sel(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(sel(x0, first(cons(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(sel(x0, first(s(z0), x2))) -> c12(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(sel(x0, first(0, x2))) -> c12(A__SEL(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(sel(x0, first(nil, x2))) -> c12(A__SEL(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(sel(from(z0), first(x1, x2))) -> c12(A__SEL(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(sel(first(z0, z1), first(x1, x2))) -> c12(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), first(x1, x2))) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(sel(cons(z0, z1), first(x1, x2))) -> c12(A__SEL(cons(mark(z0), z1), a__first(mark(x1), mark(x2))), MARK(cons(z0, z1))) MARK(sel(s(z0), first(x1, x2))) -> c12(A__SEL(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(sel(0, first(x1, x2))) -> c12(A__SEL(0, a__first(mark(x1), mark(x2))), MARK(0)) MARK(sel(nil, first(x1, x2))) -> c12(A__SEL(nil, a__first(mark(x1), mark(x2))), MARK(nil)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_1, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2, c10_2, c11_2 ---------------------------------------- (277) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing nodes: MARK(sel(nil, first(x1, x2))) -> c12(A__SEL(nil, a__first(mark(x1), mark(x2))), MARK(nil)) ---------------------------------------- (278) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(x0, cons(from(z0), x2))) -> c11(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(cons(from(z0), x2))) MARK(first(x0, cons(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(cons(first(z0, z1), x2))) MARK(first(x0, cons(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(cons(sel(z0, z1), x2))) MARK(first(x0, cons(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(cons(cons(z0, z1), x2))) MARK(first(x0, cons(s(z0), x2))) -> c11(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(cons(s(z0), x2))) MARK(first(x0, cons(0, x2))) -> c11(A__FIRST(mark(x0), cons(0, x2)), MARK(cons(0, x2))) MARK(first(x0, cons(nil, x2))) -> c11(A__FIRST(mark(x0), cons(nil, x2)), MARK(cons(nil, x2))) MARK(first(from(z0), cons(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(first(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(s(z0), cons(x1, x2))) -> c11(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(x0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(nil, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(from(from(z0)), x1)) -> c11(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(first(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(sel(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(cons(z0, z1)), x1)) -> c11(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(from(s(z0)), x1)) -> c11(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(0), x1)) -> c11(A__FIRST(a__from(0), mark(x1)), MARK(x1)) MARK(first(from(nil), x1)) -> c11(A__FIRST(a__from(nil), mark(x1)), MARK(x1)) MARK(first(from(x0), s(z0))) -> c11(MARK(s(z0))) MARK(first(from(x0), x1)) -> c11(MARK(x1)) MARK(first(first(x0, from(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(first(x0, s(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, 0), x2)) -> c11(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(first(x0, nil), x2)) -> c11(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(first(from(z0), x1), x2)) -> c11(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(s(z0), x1), x2)) -> c11(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(0, x1), x2)) -> c11(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(nil, x1), x2)) -> c11(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(first(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(sel(x0, from(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, s(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, 0), x2)) -> c11(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(sel(x0, nil), x2)) -> c11(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(sel(from(z0), x1), x2)) -> c11(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(s(z0), x1), x2)) -> c11(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(0, x1), x2)) -> c11(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(nil, x1), x2)) -> c11(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(sel(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(s(from(z0)), x1)) -> c11(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(first(z0, z1)), x1)) -> c11(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(sel(z0, z1)), x1)) -> c11(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(cons(z0, z1)), x1)) -> c11(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(s(s(z0)), x1)) -> c11(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(0), x1)) -> c11(A__FIRST(s(0), mark(x1)), MARK(x1)) MARK(first(s(nil), x1)) -> c11(A__FIRST(s(nil), mark(x1)), MARK(x1)) MARK(first(s(x0), s(z0))) -> c11(MARK(s(z0))) MARK(sel(x0, from(x1))) -> c12(A__SEL(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(sel(x0, from(from(z0)))) -> c12(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(sel(x0, from(first(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, from(sel(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, from(cons(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(sel(x0, from(s(z0)))) -> c12(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(sel(x0, from(0))) -> c12(A__SEL(mark(x0), a__from(0)), MARK(x0)) MARK(sel(x0, from(nil))) -> c12(A__SEL(mark(x0), a__from(nil)), MARK(x0)) MARK(sel(from(z0), from(x1))) -> c12(A__SEL(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(sel(first(z0, z1), from(x1))) -> c12(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), from(x1))) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(sel(s(z0), from(x1))) -> c12(A__SEL(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(sel(x0, from(x1))) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), from(x1))) -> c12(MARK(cons(z0, z1))) MARK(sel(0, from(x1))) -> c12(A__SEL(0, a__from(mark(x1)))) MARK(sel(x0, first(x1, x2))) -> c12(A__SEL(mark(x0), first(mark(x1), mark(x2))), MARK(x0)) MARK(sel(x0, first(x1, from(z0)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(sel(x0, first(x1, first(z0, z1)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, first(x1, sel(z0, z1)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, first(x1, cons(z0, z1)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(sel(x0, first(x1, s(z0)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(sel(x0, first(x1, 0))) -> c12(A__SEL(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(sel(x0, first(x1, nil))) -> c12(A__SEL(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(sel(x0, first(from(z0), x2))) -> c12(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(sel(x0, first(first(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(sel(x0, first(sel(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(sel(x0, first(cons(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(sel(x0, first(s(z0), x2))) -> c12(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(sel(x0, first(0, x2))) -> c12(A__SEL(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(sel(x0, first(nil, x2))) -> c12(A__SEL(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(sel(from(z0), first(x1, x2))) -> c12(A__SEL(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(sel(first(z0, z1), first(x1, x2))) -> c12(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), first(x1, x2))) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(sel(cons(z0, z1), first(x1, x2))) -> c12(A__SEL(cons(mark(z0), z1), a__first(mark(x1), mark(x2))), MARK(cons(z0, z1))) MARK(sel(s(z0), first(x1, x2))) -> c12(A__SEL(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(sel(0, first(x1, x2))) -> c12(A__SEL(0, a__first(mark(x1), mark(x2))), MARK(0)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(x0, cons(from(z0), x2))) -> c11(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(cons(from(z0), x2))) MARK(first(x0, cons(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(cons(first(z0, z1), x2))) MARK(first(x0, cons(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(cons(sel(z0, z1), x2))) MARK(first(x0, cons(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(cons(cons(z0, z1), x2))) MARK(first(x0, cons(s(z0), x2))) -> c11(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(cons(s(z0), x2))) MARK(first(x0, cons(0, x2))) -> c11(A__FIRST(mark(x0), cons(0, x2)), MARK(cons(0, x2))) MARK(first(x0, cons(nil, x2))) -> c11(A__FIRST(mark(x0), cons(nil, x2)), MARK(cons(nil, x2))) MARK(first(from(z0), cons(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(first(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(s(z0), cons(x1, x2))) -> c11(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(x0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(nil, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(from(from(z0)), x1)) -> c11(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(first(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(sel(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(cons(z0, z1)), x1)) -> c11(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(from(s(z0)), x1)) -> c11(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(0), x1)) -> c11(A__FIRST(a__from(0), mark(x1)), MARK(x1)) MARK(first(from(nil), x1)) -> c11(A__FIRST(a__from(nil), mark(x1)), MARK(x1)) MARK(first(from(x0), s(z0))) -> c11(MARK(s(z0))) MARK(first(from(x0), x1)) -> c11(MARK(x1)) MARK(first(first(x0, from(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(first(x0, s(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, 0), x2)) -> c11(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(first(x0, nil), x2)) -> c11(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(first(from(z0), x1), x2)) -> c11(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(s(z0), x1), x2)) -> c11(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(0, x1), x2)) -> c11(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(nil, x1), x2)) -> c11(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(first(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(sel(x0, from(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, s(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, 0), x2)) -> c11(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(sel(x0, nil), x2)) -> c11(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(sel(from(z0), x1), x2)) -> c11(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(s(z0), x1), x2)) -> c11(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(0, x1), x2)) -> c11(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(nil, x1), x2)) -> c11(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(sel(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(s(from(z0)), x1)) -> c11(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(first(z0, z1)), x1)) -> c11(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(sel(z0, z1)), x1)) -> c11(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(cons(z0, z1)), x1)) -> c11(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(s(s(z0)), x1)) -> c11(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(0), x1)) -> c11(A__FIRST(s(0), mark(x1)), MARK(x1)) MARK(first(s(nil), x1)) -> c11(A__FIRST(s(nil), mark(x1)), MARK(x1)) MARK(first(s(x0), s(z0))) -> c11(MARK(s(z0))) MARK(sel(x0, from(x1))) -> c12(A__SEL(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(sel(x0, from(from(z0)))) -> c12(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(sel(x0, from(first(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, from(sel(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, from(cons(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(sel(x0, from(s(z0)))) -> c12(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(sel(x0, from(0))) -> c12(A__SEL(mark(x0), a__from(0)), MARK(x0)) MARK(sel(x0, from(nil))) -> c12(A__SEL(mark(x0), a__from(nil)), MARK(x0)) MARK(sel(from(z0), from(x1))) -> c12(A__SEL(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(sel(first(z0, z1), from(x1))) -> c12(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), from(x1))) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(sel(s(z0), from(x1))) -> c12(A__SEL(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(sel(x0, from(x1))) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), from(x1))) -> c12(MARK(cons(z0, z1))) MARK(sel(0, from(x1))) -> c12(A__SEL(0, a__from(mark(x1)))) MARK(sel(x0, first(x1, x2))) -> c12(A__SEL(mark(x0), first(mark(x1), mark(x2))), MARK(x0)) MARK(sel(x0, first(x1, from(z0)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(sel(x0, first(x1, first(z0, z1)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, first(x1, sel(z0, z1)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, first(x1, cons(z0, z1)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(sel(x0, first(x1, s(z0)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(sel(x0, first(x1, 0))) -> c12(A__SEL(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(sel(x0, first(x1, nil))) -> c12(A__SEL(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(sel(x0, first(from(z0), x2))) -> c12(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(sel(x0, first(first(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(sel(x0, first(sel(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(sel(x0, first(cons(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(sel(x0, first(s(z0), x2))) -> c12(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(sel(x0, first(0, x2))) -> c12(A__SEL(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(sel(x0, first(nil, x2))) -> c12(A__SEL(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(sel(from(z0), first(x1, x2))) -> c12(A__SEL(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(sel(first(z0, z1), first(x1, x2))) -> c12(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), first(x1, x2))) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(sel(cons(z0, z1), first(x1, x2))) -> c12(A__SEL(cons(mark(z0), z1), a__first(mark(x1), mark(x2))), MARK(cons(z0, z1))) MARK(sel(s(z0), first(x1, x2))) -> c12(A__SEL(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(sel(0, first(x1, x2))) -> c12(A__SEL(0, a__first(mark(x1), mark(x2))), MARK(0)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_1, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2, c10_2, c11_2 ---------------------------------------- (279) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 3 trailing tuple parts ---------------------------------------- (280) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(x0, cons(from(z0), x2))) -> c11(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(cons(from(z0), x2))) MARK(first(x0, cons(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(cons(first(z0, z1), x2))) MARK(first(x0, cons(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(cons(sel(z0, z1), x2))) MARK(first(x0, cons(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(cons(cons(z0, z1), x2))) MARK(first(x0, cons(s(z0), x2))) -> c11(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(cons(s(z0), x2))) MARK(first(x0, cons(0, x2))) -> c11(A__FIRST(mark(x0), cons(0, x2)), MARK(cons(0, x2))) MARK(first(x0, cons(nil, x2))) -> c11(A__FIRST(mark(x0), cons(nil, x2)), MARK(cons(nil, x2))) MARK(first(from(z0), cons(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(first(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(s(z0), cons(x1, x2))) -> c11(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(x0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(nil, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(from(from(z0)), x1)) -> c11(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(first(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(sel(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(cons(z0, z1)), x1)) -> c11(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(from(s(z0)), x1)) -> c11(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(0), x1)) -> c11(A__FIRST(a__from(0), mark(x1)), MARK(x1)) MARK(first(from(nil), x1)) -> c11(A__FIRST(a__from(nil), mark(x1)), MARK(x1)) MARK(first(from(x0), s(z0))) -> c11(MARK(s(z0))) MARK(first(from(x0), x1)) -> c11(MARK(x1)) MARK(first(first(x0, from(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(first(x0, s(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, 0), x2)) -> c11(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(first(x0, nil), x2)) -> c11(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(first(from(z0), x1), x2)) -> c11(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(s(z0), x1), x2)) -> c11(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(0, x1), x2)) -> c11(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(nil, x1), x2)) -> c11(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(first(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(sel(x0, from(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, s(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, 0), x2)) -> c11(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(sel(x0, nil), x2)) -> c11(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(sel(from(z0), x1), x2)) -> c11(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(s(z0), x1), x2)) -> c11(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(0, x1), x2)) -> c11(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(nil, x1), x2)) -> c11(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(sel(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(s(from(z0)), x1)) -> c11(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(first(z0, z1)), x1)) -> c11(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(sel(z0, z1)), x1)) -> c11(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(cons(z0, z1)), x1)) -> c11(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(s(s(z0)), x1)) -> c11(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(0), x1)) -> c11(A__FIRST(s(0), mark(x1)), MARK(x1)) MARK(first(s(nil), x1)) -> c11(A__FIRST(s(nil), mark(x1)), MARK(x1)) MARK(first(s(x0), s(z0))) -> c11(MARK(s(z0))) MARK(sel(x0, from(x1))) -> c12(A__SEL(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(sel(x0, from(from(z0)))) -> c12(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(sel(x0, from(first(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, from(sel(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, from(cons(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(sel(x0, from(s(z0)))) -> c12(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(sel(x0, from(0))) -> c12(A__SEL(mark(x0), a__from(0)), MARK(x0)) MARK(sel(x0, from(nil))) -> c12(A__SEL(mark(x0), a__from(nil)), MARK(x0)) MARK(sel(from(z0), from(x1))) -> c12(A__SEL(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(sel(first(z0, z1), from(x1))) -> c12(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), from(x1))) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(sel(s(z0), from(x1))) -> c12(A__SEL(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(sel(x0, from(x1))) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), from(x1))) -> c12(MARK(cons(z0, z1))) MARK(sel(0, from(x1))) -> c12(A__SEL(0, a__from(mark(x1)))) MARK(sel(x0, first(x1, from(z0)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(sel(x0, first(x1, first(z0, z1)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, first(x1, sel(z0, z1)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, first(x1, cons(z0, z1)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(sel(x0, first(x1, s(z0)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(sel(x0, first(x1, 0))) -> c12(A__SEL(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(sel(x0, first(x1, nil))) -> c12(A__SEL(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(sel(x0, first(from(z0), x2))) -> c12(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(sel(x0, first(first(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(sel(x0, first(sel(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(sel(x0, first(cons(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(sel(x0, first(s(z0), x2))) -> c12(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(sel(x0, first(0, x2))) -> c12(A__SEL(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(sel(x0, first(nil, x2))) -> c12(A__SEL(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(sel(from(z0), first(x1, x2))) -> c12(A__SEL(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(sel(first(z0, z1), first(x1, x2))) -> c12(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), first(x1, x2))) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(sel(s(z0), first(x1, x2))) -> c12(A__SEL(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(sel(x0, first(x1, x2))) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), first(x1, x2))) -> c12(MARK(cons(z0, z1))) MARK(sel(0, first(x1, x2))) -> c12(A__SEL(0, a__first(mark(x1), mark(x2)))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(x0, cons(from(z0), x2))) -> c11(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(cons(from(z0), x2))) MARK(first(x0, cons(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(cons(first(z0, z1), x2))) MARK(first(x0, cons(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(cons(sel(z0, z1), x2))) MARK(first(x0, cons(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(cons(cons(z0, z1), x2))) MARK(first(x0, cons(s(z0), x2))) -> c11(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(cons(s(z0), x2))) MARK(first(x0, cons(0, x2))) -> c11(A__FIRST(mark(x0), cons(0, x2)), MARK(cons(0, x2))) MARK(first(x0, cons(nil, x2))) -> c11(A__FIRST(mark(x0), cons(nil, x2)), MARK(cons(nil, x2))) MARK(first(from(z0), cons(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(first(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(s(z0), cons(x1, x2))) -> c11(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(x0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(nil, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(from(from(z0)), x1)) -> c11(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(first(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(sel(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(cons(z0, z1)), x1)) -> c11(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(from(s(z0)), x1)) -> c11(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(0), x1)) -> c11(A__FIRST(a__from(0), mark(x1)), MARK(x1)) MARK(first(from(nil), x1)) -> c11(A__FIRST(a__from(nil), mark(x1)), MARK(x1)) MARK(first(from(x0), s(z0))) -> c11(MARK(s(z0))) MARK(first(from(x0), x1)) -> c11(MARK(x1)) MARK(first(first(x0, from(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(first(x0, s(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, 0), x2)) -> c11(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(first(x0, nil), x2)) -> c11(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(first(from(z0), x1), x2)) -> c11(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(s(z0), x1), x2)) -> c11(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(0, x1), x2)) -> c11(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(nil, x1), x2)) -> c11(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(first(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(sel(x0, from(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, s(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, 0), x2)) -> c11(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(sel(x0, nil), x2)) -> c11(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(sel(from(z0), x1), x2)) -> c11(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(s(z0), x1), x2)) -> c11(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(0, x1), x2)) -> c11(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(nil, x1), x2)) -> c11(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(sel(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(s(from(z0)), x1)) -> c11(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(first(z0, z1)), x1)) -> c11(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(sel(z0, z1)), x1)) -> c11(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(cons(z0, z1)), x1)) -> c11(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(s(s(z0)), x1)) -> c11(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(0), x1)) -> c11(A__FIRST(s(0), mark(x1)), MARK(x1)) MARK(first(s(nil), x1)) -> c11(A__FIRST(s(nil), mark(x1)), MARK(x1)) MARK(first(s(x0), s(z0))) -> c11(MARK(s(z0))) MARK(sel(x0, from(x1))) -> c12(A__SEL(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(sel(x0, from(from(z0)))) -> c12(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(sel(x0, from(first(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, from(sel(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, from(cons(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(sel(x0, from(s(z0)))) -> c12(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(sel(x0, from(0))) -> c12(A__SEL(mark(x0), a__from(0)), MARK(x0)) MARK(sel(x0, from(nil))) -> c12(A__SEL(mark(x0), a__from(nil)), MARK(x0)) MARK(sel(from(z0), from(x1))) -> c12(A__SEL(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(sel(first(z0, z1), from(x1))) -> c12(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), from(x1))) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(sel(s(z0), from(x1))) -> c12(A__SEL(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(sel(x0, from(x1))) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), from(x1))) -> c12(MARK(cons(z0, z1))) MARK(sel(0, from(x1))) -> c12(A__SEL(0, a__from(mark(x1)))) MARK(sel(x0, first(x1, from(z0)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(sel(x0, first(x1, first(z0, z1)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, first(x1, sel(z0, z1)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, first(x1, cons(z0, z1)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(sel(x0, first(x1, s(z0)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(sel(x0, first(x1, 0))) -> c12(A__SEL(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(sel(x0, first(x1, nil))) -> c12(A__SEL(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(sel(x0, first(from(z0), x2))) -> c12(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(sel(x0, first(first(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(sel(x0, first(sel(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(sel(x0, first(cons(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(sel(x0, first(s(z0), x2))) -> c12(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(sel(x0, first(0, x2))) -> c12(A__SEL(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(sel(x0, first(nil, x2))) -> c12(A__SEL(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(sel(from(z0), first(x1, x2))) -> c12(A__SEL(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(sel(first(z0, z1), first(x1, x2))) -> c12(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), first(x1, x2))) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(sel(s(z0), first(x1, x2))) -> c12(A__SEL(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(sel(x0, first(x1, x2))) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), first(x1, x2))) -> c12(MARK(cons(z0, z1))) MARK(sel(0, first(x1, x2))) -> c12(A__SEL(0, a__first(mark(x1), mark(x2)))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_1, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2, c10_2, c11_2 ---------------------------------------- (281) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(sel(x0, sel(z0, z1))) -> c12(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) by MARK(sel(x0, sel(x1, x2))) -> c12(A__SEL(mark(x0), sel(mark(x1), mark(x2))), MARK(x0)) MARK(sel(x0, sel(x1, from(z0)))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(sel(x0, sel(x1, first(z0, z1)))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, sel(x1, sel(z0, z1)))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, sel(x1, cons(z0, z1)))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(sel(x0, sel(x1, s(z0)))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(sel(x0, sel(x1, 0))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(sel(x0, sel(x1, nil))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(sel(x0, sel(from(z0), x2))) -> c12(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(sel(x0, sel(first(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(sel(x0, sel(sel(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(sel(x0, sel(cons(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(sel(x0, sel(s(z0), x2))) -> c12(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(sel(x0, sel(0, x2))) -> c12(A__SEL(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(sel(x0, sel(nil, x2))) -> c12(A__SEL(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(sel(from(z0), sel(x1, x2))) -> c12(A__SEL(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(sel(first(z0, z1), sel(x1, x2))) -> c12(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), sel(x1, x2))) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(sel(cons(z0, z1), sel(x1, x2))) -> c12(A__SEL(cons(mark(z0), z1), a__sel(mark(x1), mark(x2))), MARK(cons(z0, z1))) MARK(sel(s(z0), sel(x1, x2))) -> c12(A__SEL(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(sel(0, sel(x1, x2))) -> c12(A__SEL(0, a__sel(mark(x1), mark(x2))), MARK(0)) MARK(sel(nil, sel(x1, x2))) -> c12(A__SEL(nil, a__sel(mark(x1), mark(x2))), MARK(nil)) ---------------------------------------- (282) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(x0, cons(from(z0), x2))) -> c11(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(cons(from(z0), x2))) MARK(first(x0, cons(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(cons(first(z0, z1), x2))) MARK(first(x0, cons(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(cons(sel(z0, z1), x2))) MARK(first(x0, cons(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(cons(cons(z0, z1), x2))) MARK(first(x0, cons(s(z0), x2))) -> c11(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(cons(s(z0), x2))) MARK(first(x0, cons(0, x2))) -> c11(A__FIRST(mark(x0), cons(0, x2)), MARK(cons(0, x2))) MARK(first(x0, cons(nil, x2))) -> c11(A__FIRST(mark(x0), cons(nil, x2)), MARK(cons(nil, x2))) MARK(first(from(z0), cons(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(first(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(s(z0), cons(x1, x2))) -> c11(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(x0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(nil, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(from(from(z0)), x1)) -> c11(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(first(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(sel(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(cons(z0, z1)), x1)) -> c11(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(from(s(z0)), x1)) -> c11(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(0), x1)) -> c11(A__FIRST(a__from(0), mark(x1)), MARK(x1)) MARK(first(from(nil), x1)) -> c11(A__FIRST(a__from(nil), mark(x1)), MARK(x1)) MARK(first(from(x0), s(z0))) -> c11(MARK(s(z0))) MARK(first(from(x0), x1)) -> c11(MARK(x1)) MARK(first(first(x0, from(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(first(x0, s(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, 0), x2)) -> c11(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(first(x0, nil), x2)) -> c11(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(first(from(z0), x1), x2)) -> c11(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(s(z0), x1), x2)) -> c11(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(0, x1), x2)) -> c11(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(nil, x1), x2)) -> c11(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(first(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(sel(x0, from(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, s(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, 0), x2)) -> c11(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(sel(x0, nil), x2)) -> c11(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(sel(from(z0), x1), x2)) -> c11(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(s(z0), x1), x2)) -> c11(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(0, x1), x2)) -> c11(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(nil, x1), x2)) -> c11(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(sel(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(s(from(z0)), x1)) -> c11(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(first(z0, z1)), x1)) -> c11(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(sel(z0, z1)), x1)) -> c11(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(cons(z0, z1)), x1)) -> c11(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(s(s(z0)), x1)) -> c11(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(0), x1)) -> c11(A__FIRST(s(0), mark(x1)), MARK(x1)) MARK(first(s(nil), x1)) -> c11(A__FIRST(s(nil), mark(x1)), MARK(x1)) MARK(first(s(x0), s(z0))) -> c11(MARK(s(z0))) MARK(sel(x0, from(x1))) -> c12(A__SEL(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(sel(x0, from(from(z0)))) -> c12(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(sel(x0, from(first(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, from(sel(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, from(cons(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(sel(x0, from(s(z0)))) -> c12(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(sel(x0, from(0))) -> c12(A__SEL(mark(x0), a__from(0)), MARK(x0)) MARK(sel(x0, from(nil))) -> c12(A__SEL(mark(x0), a__from(nil)), MARK(x0)) MARK(sel(from(z0), from(x1))) -> c12(A__SEL(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(sel(first(z0, z1), from(x1))) -> c12(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), from(x1))) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(sel(s(z0), from(x1))) -> c12(A__SEL(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(sel(x0, from(x1))) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), from(x1))) -> c12(MARK(cons(z0, z1))) MARK(sel(0, from(x1))) -> c12(A__SEL(0, a__from(mark(x1)))) MARK(sel(x0, first(x1, from(z0)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(sel(x0, first(x1, first(z0, z1)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, first(x1, sel(z0, z1)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, first(x1, cons(z0, z1)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(sel(x0, first(x1, s(z0)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(sel(x0, first(x1, 0))) -> c12(A__SEL(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(sel(x0, first(x1, nil))) -> c12(A__SEL(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(sel(x0, first(from(z0), x2))) -> c12(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(sel(x0, first(first(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(sel(x0, first(sel(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(sel(x0, first(cons(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(sel(x0, first(s(z0), x2))) -> c12(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(sel(x0, first(0, x2))) -> c12(A__SEL(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(sel(x0, first(nil, x2))) -> c12(A__SEL(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(sel(from(z0), first(x1, x2))) -> c12(A__SEL(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(sel(first(z0, z1), first(x1, x2))) -> c12(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), first(x1, x2))) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(sel(s(z0), first(x1, x2))) -> c12(A__SEL(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(sel(x0, first(x1, x2))) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), first(x1, x2))) -> c12(MARK(cons(z0, z1))) MARK(sel(0, first(x1, x2))) -> c12(A__SEL(0, a__first(mark(x1), mark(x2)))) MARK(sel(x0, sel(x1, x2))) -> c12(A__SEL(mark(x0), sel(mark(x1), mark(x2))), MARK(x0)) MARK(sel(x0, sel(x1, from(z0)))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(sel(x0, sel(x1, first(z0, z1)))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, sel(x1, sel(z0, z1)))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, sel(x1, cons(z0, z1)))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(sel(x0, sel(x1, s(z0)))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(sel(x0, sel(x1, 0))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(sel(x0, sel(x1, nil))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(sel(x0, sel(from(z0), x2))) -> c12(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(sel(x0, sel(first(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(sel(x0, sel(sel(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(sel(x0, sel(cons(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(sel(x0, sel(s(z0), x2))) -> c12(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(sel(x0, sel(0, x2))) -> c12(A__SEL(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(sel(x0, sel(nil, x2))) -> c12(A__SEL(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(sel(from(z0), sel(x1, x2))) -> c12(A__SEL(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(sel(first(z0, z1), sel(x1, x2))) -> c12(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), sel(x1, x2))) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(sel(cons(z0, z1), sel(x1, x2))) -> c12(A__SEL(cons(mark(z0), z1), a__sel(mark(x1), mark(x2))), MARK(cons(z0, z1))) MARK(sel(s(z0), sel(x1, x2))) -> c12(A__SEL(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(sel(0, sel(x1, x2))) -> c12(A__SEL(0, a__sel(mark(x1), mark(x2))), MARK(0)) MARK(sel(nil, sel(x1, x2))) -> c12(A__SEL(nil, a__sel(mark(x1), mark(x2))), MARK(nil)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(x0, cons(from(z0), x2))) -> c11(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(cons(from(z0), x2))) MARK(first(x0, cons(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(cons(first(z0, z1), x2))) MARK(first(x0, cons(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(cons(sel(z0, z1), x2))) MARK(first(x0, cons(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(cons(cons(z0, z1), x2))) MARK(first(x0, cons(s(z0), x2))) -> c11(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(cons(s(z0), x2))) MARK(first(x0, cons(0, x2))) -> c11(A__FIRST(mark(x0), cons(0, x2)), MARK(cons(0, x2))) MARK(first(x0, cons(nil, x2))) -> c11(A__FIRST(mark(x0), cons(nil, x2)), MARK(cons(nil, x2))) MARK(first(from(z0), cons(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(first(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(s(z0), cons(x1, x2))) -> c11(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(x0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(nil, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(from(from(z0)), x1)) -> c11(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(first(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(sel(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(cons(z0, z1)), x1)) -> c11(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(from(s(z0)), x1)) -> c11(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(0), x1)) -> c11(A__FIRST(a__from(0), mark(x1)), MARK(x1)) MARK(first(from(nil), x1)) -> c11(A__FIRST(a__from(nil), mark(x1)), MARK(x1)) MARK(first(from(x0), s(z0))) -> c11(MARK(s(z0))) MARK(first(from(x0), x1)) -> c11(MARK(x1)) MARK(first(first(x0, from(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(first(x0, s(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, 0), x2)) -> c11(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(first(x0, nil), x2)) -> c11(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(first(from(z0), x1), x2)) -> c11(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(s(z0), x1), x2)) -> c11(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(0, x1), x2)) -> c11(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(nil, x1), x2)) -> c11(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(first(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(sel(x0, from(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, s(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, 0), x2)) -> c11(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(sel(x0, nil), x2)) -> c11(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(sel(from(z0), x1), x2)) -> c11(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(s(z0), x1), x2)) -> c11(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(0, x1), x2)) -> c11(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(nil, x1), x2)) -> c11(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(sel(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(s(from(z0)), x1)) -> c11(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(first(z0, z1)), x1)) -> c11(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(sel(z0, z1)), x1)) -> c11(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(cons(z0, z1)), x1)) -> c11(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(s(s(z0)), x1)) -> c11(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(0), x1)) -> c11(A__FIRST(s(0), mark(x1)), MARK(x1)) MARK(first(s(nil), x1)) -> c11(A__FIRST(s(nil), mark(x1)), MARK(x1)) MARK(first(s(x0), s(z0))) -> c11(MARK(s(z0))) MARK(sel(x0, from(x1))) -> c12(A__SEL(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(sel(x0, from(from(z0)))) -> c12(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(sel(x0, from(first(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, from(sel(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, from(cons(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(sel(x0, from(s(z0)))) -> c12(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(sel(x0, from(0))) -> c12(A__SEL(mark(x0), a__from(0)), MARK(x0)) MARK(sel(x0, from(nil))) -> c12(A__SEL(mark(x0), a__from(nil)), MARK(x0)) MARK(sel(from(z0), from(x1))) -> c12(A__SEL(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(sel(first(z0, z1), from(x1))) -> c12(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), from(x1))) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(sel(s(z0), from(x1))) -> c12(A__SEL(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(sel(x0, from(x1))) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), from(x1))) -> c12(MARK(cons(z0, z1))) MARK(sel(0, from(x1))) -> c12(A__SEL(0, a__from(mark(x1)))) MARK(sel(x0, first(x1, from(z0)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(sel(x0, first(x1, first(z0, z1)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, first(x1, sel(z0, z1)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, first(x1, cons(z0, z1)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(sel(x0, first(x1, s(z0)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(sel(x0, first(x1, 0))) -> c12(A__SEL(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(sel(x0, first(x1, nil))) -> c12(A__SEL(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(sel(x0, first(from(z0), x2))) -> c12(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(sel(x0, first(first(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(sel(x0, first(sel(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(sel(x0, first(cons(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(sel(x0, first(s(z0), x2))) -> c12(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(sel(x0, first(0, x2))) -> c12(A__SEL(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(sel(x0, first(nil, x2))) -> c12(A__SEL(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(sel(from(z0), first(x1, x2))) -> c12(A__SEL(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(sel(first(z0, z1), first(x1, x2))) -> c12(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), first(x1, x2))) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(sel(s(z0), first(x1, x2))) -> c12(A__SEL(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(sel(x0, first(x1, x2))) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), first(x1, x2))) -> c12(MARK(cons(z0, z1))) MARK(sel(0, first(x1, x2))) -> c12(A__SEL(0, a__first(mark(x1), mark(x2)))) MARK(sel(x0, sel(x1, x2))) -> c12(A__SEL(mark(x0), sel(mark(x1), mark(x2))), MARK(x0)) MARK(sel(x0, sel(x1, from(z0)))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(sel(x0, sel(x1, first(z0, z1)))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, sel(x1, sel(z0, z1)))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, sel(x1, cons(z0, z1)))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(sel(x0, sel(x1, s(z0)))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(sel(x0, sel(x1, 0))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(sel(x0, sel(x1, nil))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(sel(x0, sel(from(z0), x2))) -> c12(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(sel(x0, sel(first(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(sel(x0, sel(sel(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(sel(x0, sel(cons(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(sel(x0, sel(s(z0), x2))) -> c12(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(sel(x0, sel(0, x2))) -> c12(A__SEL(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(sel(x0, sel(nil, x2))) -> c12(A__SEL(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(sel(from(z0), sel(x1, x2))) -> c12(A__SEL(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(sel(first(z0, z1), sel(x1, x2))) -> c12(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), sel(x1, x2))) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(sel(cons(z0, z1), sel(x1, x2))) -> c12(A__SEL(cons(mark(z0), z1), a__sel(mark(x1), mark(x2))), MARK(cons(z0, z1))) MARK(sel(s(z0), sel(x1, x2))) -> c12(A__SEL(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(sel(0, sel(x1, x2))) -> c12(A__SEL(0, a__sel(mark(x1), mark(x2))), MARK(0)) MARK(sel(nil, sel(x1, x2))) -> c12(A__SEL(nil, a__sel(mark(x1), mark(x2))), MARK(nil)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_1, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2, c10_2, c11_2 ---------------------------------------- (283) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing nodes: MARK(sel(nil, sel(x1, x2))) -> c12(A__SEL(nil, a__sel(mark(x1), mark(x2))), MARK(nil)) ---------------------------------------- (284) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(x0, cons(from(z0), x2))) -> c11(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(cons(from(z0), x2))) MARK(first(x0, cons(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(cons(first(z0, z1), x2))) MARK(first(x0, cons(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(cons(sel(z0, z1), x2))) MARK(first(x0, cons(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(cons(cons(z0, z1), x2))) MARK(first(x0, cons(s(z0), x2))) -> c11(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(cons(s(z0), x2))) MARK(first(x0, cons(0, x2))) -> c11(A__FIRST(mark(x0), cons(0, x2)), MARK(cons(0, x2))) MARK(first(x0, cons(nil, x2))) -> c11(A__FIRST(mark(x0), cons(nil, x2)), MARK(cons(nil, x2))) MARK(first(from(z0), cons(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(first(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(s(z0), cons(x1, x2))) -> c11(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(x0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(nil, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(from(from(z0)), x1)) -> c11(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(first(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(sel(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(cons(z0, z1)), x1)) -> c11(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(from(s(z0)), x1)) -> c11(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(0), x1)) -> c11(A__FIRST(a__from(0), mark(x1)), MARK(x1)) MARK(first(from(nil), x1)) -> c11(A__FIRST(a__from(nil), mark(x1)), MARK(x1)) MARK(first(from(x0), s(z0))) -> c11(MARK(s(z0))) MARK(first(from(x0), x1)) -> c11(MARK(x1)) MARK(first(first(x0, from(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(first(x0, s(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, 0), x2)) -> c11(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(first(x0, nil), x2)) -> c11(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(first(from(z0), x1), x2)) -> c11(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(s(z0), x1), x2)) -> c11(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(0, x1), x2)) -> c11(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(nil, x1), x2)) -> c11(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(first(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(sel(x0, from(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, s(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, 0), x2)) -> c11(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(sel(x0, nil), x2)) -> c11(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(sel(from(z0), x1), x2)) -> c11(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(s(z0), x1), x2)) -> c11(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(0, x1), x2)) -> c11(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(nil, x1), x2)) -> c11(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(sel(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(s(from(z0)), x1)) -> c11(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(first(z0, z1)), x1)) -> c11(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(sel(z0, z1)), x1)) -> c11(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(cons(z0, z1)), x1)) -> c11(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(s(s(z0)), x1)) -> c11(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(0), x1)) -> c11(A__FIRST(s(0), mark(x1)), MARK(x1)) MARK(first(s(nil), x1)) -> c11(A__FIRST(s(nil), mark(x1)), MARK(x1)) MARK(first(s(x0), s(z0))) -> c11(MARK(s(z0))) MARK(sel(x0, from(x1))) -> c12(A__SEL(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(sel(x0, from(from(z0)))) -> c12(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(sel(x0, from(first(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, from(sel(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, from(cons(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(sel(x0, from(s(z0)))) -> c12(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(sel(x0, from(0))) -> c12(A__SEL(mark(x0), a__from(0)), MARK(x0)) MARK(sel(x0, from(nil))) -> c12(A__SEL(mark(x0), a__from(nil)), MARK(x0)) MARK(sel(from(z0), from(x1))) -> c12(A__SEL(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(sel(first(z0, z1), from(x1))) -> c12(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), from(x1))) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(sel(s(z0), from(x1))) -> c12(A__SEL(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(sel(x0, from(x1))) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), from(x1))) -> c12(MARK(cons(z0, z1))) MARK(sel(0, from(x1))) -> c12(A__SEL(0, a__from(mark(x1)))) MARK(sel(x0, first(x1, from(z0)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(sel(x0, first(x1, first(z0, z1)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, first(x1, sel(z0, z1)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, first(x1, cons(z0, z1)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(sel(x0, first(x1, s(z0)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(sel(x0, first(x1, 0))) -> c12(A__SEL(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(sel(x0, first(x1, nil))) -> c12(A__SEL(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(sel(x0, first(from(z0), x2))) -> c12(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(sel(x0, first(first(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(sel(x0, first(sel(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(sel(x0, first(cons(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(sel(x0, first(s(z0), x2))) -> c12(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(sel(x0, first(0, x2))) -> c12(A__SEL(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(sel(x0, first(nil, x2))) -> c12(A__SEL(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(sel(from(z0), first(x1, x2))) -> c12(A__SEL(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(sel(first(z0, z1), first(x1, x2))) -> c12(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), first(x1, x2))) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(sel(s(z0), first(x1, x2))) -> c12(A__SEL(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(sel(x0, first(x1, x2))) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), first(x1, x2))) -> c12(MARK(cons(z0, z1))) MARK(sel(0, first(x1, x2))) -> c12(A__SEL(0, a__first(mark(x1), mark(x2)))) MARK(sel(x0, sel(x1, x2))) -> c12(A__SEL(mark(x0), sel(mark(x1), mark(x2))), MARK(x0)) MARK(sel(x0, sel(x1, from(z0)))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(sel(x0, sel(x1, first(z0, z1)))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, sel(x1, sel(z0, z1)))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, sel(x1, cons(z0, z1)))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(sel(x0, sel(x1, s(z0)))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(sel(x0, sel(x1, 0))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(sel(x0, sel(x1, nil))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(sel(x0, sel(from(z0), x2))) -> c12(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(sel(x0, sel(first(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(sel(x0, sel(sel(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(sel(x0, sel(cons(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(sel(x0, sel(s(z0), x2))) -> c12(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(sel(x0, sel(0, x2))) -> c12(A__SEL(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(sel(x0, sel(nil, x2))) -> c12(A__SEL(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(sel(from(z0), sel(x1, x2))) -> c12(A__SEL(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(sel(first(z0, z1), sel(x1, x2))) -> c12(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), sel(x1, x2))) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(sel(cons(z0, z1), sel(x1, x2))) -> c12(A__SEL(cons(mark(z0), z1), a__sel(mark(x1), mark(x2))), MARK(cons(z0, z1))) MARK(sel(s(z0), sel(x1, x2))) -> c12(A__SEL(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(sel(0, sel(x1, x2))) -> c12(A__SEL(0, a__sel(mark(x1), mark(x2))), MARK(0)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(x0, cons(from(z0), x2))) -> c11(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(cons(from(z0), x2))) MARK(first(x0, cons(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(cons(first(z0, z1), x2))) MARK(first(x0, cons(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(cons(sel(z0, z1), x2))) MARK(first(x0, cons(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(cons(cons(z0, z1), x2))) MARK(first(x0, cons(s(z0), x2))) -> c11(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(cons(s(z0), x2))) MARK(first(x0, cons(0, x2))) -> c11(A__FIRST(mark(x0), cons(0, x2)), MARK(cons(0, x2))) MARK(first(x0, cons(nil, x2))) -> c11(A__FIRST(mark(x0), cons(nil, x2)), MARK(cons(nil, x2))) MARK(first(from(z0), cons(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(first(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(s(z0), cons(x1, x2))) -> c11(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(x0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(nil, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(from(from(z0)), x1)) -> c11(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(first(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(sel(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(cons(z0, z1)), x1)) -> c11(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(from(s(z0)), x1)) -> c11(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(0), x1)) -> c11(A__FIRST(a__from(0), mark(x1)), MARK(x1)) MARK(first(from(nil), x1)) -> c11(A__FIRST(a__from(nil), mark(x1)), MARK(x1)) MARK(first(from(x0), s(z0))) -> c11(MARK(s(z0))) MARK(first(from(x0), x1)) -> c11(MARK(x1)) MARK(first(first(x0, from(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(first(x0, s(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, 0), x2)) -> c11(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(first(x0, nil), x2)) -> c11(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(first(from(z0), x1), x2)) -> c11(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(s(z0), x1), x2)) -> c11(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(0, x1), x2)) -> c11(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(nil, x1), x2)) -> c11(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(first(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(sel(x0, from(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, s(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, 0), x2)) -> c11(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(sel(x0, nil), x2)) -> c11(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(sel(from(z0), x1), x2)) -> c11(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(s(z0), x1), x2)) -> c11(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(0, x1), x2)) -> c11(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(nil, x1), x2)) -> c11(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(sel(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(s(from(z0)), x1)) -> c11(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(first(z0, z1)), x1)) -> c11(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(sel(z0, z1)), x1)) -> c11(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(cons(z0, z1)), x1)) -> c11(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(s(s(z0)), x1)) -> c11(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(0), x1)) -> c11(A__FIRST(s(0), mark(x1)), MARK(x1)) MARK(first(s(nil), x1)) -> c11(A__FIRST(s(nil), mark(x1)), MARK(x1)) MARK(first(s(x0), s(z0))) -> c11(MARK(s(z0))) MARK(sel(x0, from(x1))) -> c12(A__SEL(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(sel(x0, from(from(z0)))) -> c12(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(sel(x0, from(first(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, from(sel(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, from(cons(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(sel(x0, from(s(z0)))) -> c12(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(sel(x0, from(0))) -> c12(A__SEL(mark(x0), a__from(0)), MARK(x0)) MARK(sel(x0, from(nil))) -> c12(A__SEL(mark(x0), a__from(nil)), MARK(x0)) MARK(sel(from(z0), from(x1))) -> c12(A__SEL(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(sel(first(z0, z1), from(x1))) -> c12(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), from(x1))) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(sel(s(z0), from(x1))) -> c12(A__SEL(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(sel(x0, from(x1))) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), from(x1))) -> c12(MARK(cons(z0, z1))) MARK(sel(0, from(x1))) -> c12(A__SEL(0, a__from(mark(x1)))) MARK(sel(x0, first(x1, from(z0)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(sel(x0, first(x1, first(z0, z1)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, first(x1, sel(z0, z1)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, first(x1, cons(z0, z1)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(sel(x0, first(x1, s(z0)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(sel(x0, first(x1, 0))) -> c12(A__SEL(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(sel(x0, first(x1, nil))) -> c12(A__SEL(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(sel(x0, first(from(z0), x2))) -> c12(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(sel(x0, first(first(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(sel(x0, first(sel(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(sel(x0, first(cons(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(sel(x0, first(s(z0), x2))) -> c12(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(sel(x0, first(0, x2))) -> c12(A__SEL(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(sel(x0, first(nil, x2))) -> c12(A__SEL(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(sel(from(z0), first(x1, x2))) -> c12(A__SEL(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(sel(first(z0, z1), first(x1, x2))) -> c12(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), first(x1, x2))) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(sel(s(z0), first(x1, x2))) -> c12(A__SEL(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(sel(x0, first(x1, x2))) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), first(x1, x2))) -> c12(MARK(cons(z0, z1))) MARK(sel(0, first(x1, x2))) -> c12(A__SEL(0, a__first(mark(x1), mark(x2)))) MARK(sel(x0, sel(x1, x2))) -> c12(A__SEL(mark(x0), sel(mark(x1), mark(x2))), MARK(x0)) MARK(sel(x0, sel(x1, from(z0)))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(sel(x0, sel(x1, first(z0, z1)))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, sel(x1, sel(z0, z1)))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, sel(x1, cons(z0, z1)))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(sel(x0, sel(x1, s(z0)))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(sel(x0, sel(x1, 0))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(sel(x0, sel(x1, nil))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(sel(x0, sel(from(z0), x2))) -> c12(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(sel(x0, sel(first(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(sel(x0, sel(sel(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(sel(x0, sel(cons(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(sel(x0, sel(s(z0), x2))) -> c12(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(sel(x0, sel(0, x2))) -> c12(A__SEL(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(sel(x0, sel(nil, x2))) -> c12(A__SEL(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(sel(from(z0), sel(x1, x2))) -> c12(A__SEL(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(sel(first(z0, z1), sel(x1, x2))) -> c12(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), sel(x1, x2))) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(sel(cons(z0, z1), sel(x1, x2))) -> c12(A__SEL(cons(mark(z0), z1), a__sel(mark(x1), mark(x2))), MARK(cons(z0, z1))) MARK(sel(s(z0), sel(x1, x2))) -> c12(A__SEL(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(sel(0, sel(x1, x2))) -> c12(A__SEL(0, a__sel(mark(x1), mark(x2))), MARK(0)) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_1, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2, c10_2, c11_2 ---------------------------------------- (285) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 3 trailing tuple parts ---------------------------------------- (286) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__first(0, z0) -> nil a__first(s(z0), cons(z1, z2)) -> cons(mark(z1), first(z0, z2)) a__first(z0, z1) -> first(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(first(z0, z1)) -> a__first(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__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(x0, cons(from(z0), x2))) -> c11(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(cons(from(z0), x2))) MARK(first(x0, cons(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(cons(first(z0, z1), x2))) MARK(first(x0, cons(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(cons(sel(z0, z1), x2))) MARK(first(x0, cons(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(cons(cons(z0, z1), x2))) MARK(first(x0, cons(s(z0), x2))) -> c11(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(cons(s(z0), x2))) MARK(first(x0, cons(0, x2))) -> c11(A__FIRST(mark(x0), cons(0, x2)), MARK(cons(0, x2))) MARK(first(x0, cons(nil, x2))) -> c11(A__FIRST(mark(x0), cons(nil, x2)), MARK(cons(nil, x2))) MARK(first(from(z0), cons(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(first(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(s(z0), cons(x1, x2))) -> c11(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(x0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(nil, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(from(from(z0)), x1)) -> c11(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(first(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(sel(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(cons(z0, z1)), x1)) -> c11(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(from(s(z0)), x1)) -> c11(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(0), x1)) -> c11(A__FIRST(a__from(0), mark(x1)), MARK(x1)) MARK(first(from(nil), x1)) -> c11(A__FIRST(a__from(nil), mark(x1)), MARK(x1)) MARK(first(from(x0), s(z0))) -> c11(MARK(s(z0))) MARK(first(from(x0), x1)) -> c11(MARK(x1)) MARK(first(first(x0, from(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(first(x0, s(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, 0), x2)) -> c11(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(first(x0, nil), x2)) -> c11(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(first(from(z0), x1), x2)) -> c11(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(s(z0), x1), x2)) -> c11(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(0, x1), x2)) -> c11(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(nil, x1), x2)) -> c11(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(first(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(sel(x0, from(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, s(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, 0), x2)) -> c11(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(sel(x0, nil), x2)) -> c11(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(sel(from(z0), x1), x2)) -> c11(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(s(z0), x1), x2)) -> c11(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(0, x1), x2)) -> c11(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(nil, x1), x2)) -> c11(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(sel(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(s(from(z0)), x1)) -> c11(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(first(z0, z1)), x1)) -> c11(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(sel(z0, z1)), x1)) -> c11(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(cons(z0, z1)), x1)) -> c11(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(s(s(z0)), x1)) -> c11(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(0), x1)) -> c11(A__FIRST(s(0), mark(x1)), MARK(x1)) MARK(first(s(nil), x1)) -> c11(A__FIRST(s(nil), mark(x1)), MARK(x1)) MARK(first(s(x0), s(z0))) -> c11(MARK(s(z0))) MARK(sel(x0, from(x1))) -> c12(A__SEL(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(sel(x0, from(from(z0)))) -> c12(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(sel(x0, from(first(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, from(sel(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, from(cons(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(sel(x0, from(s(z0)))) -> c12(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(sel(x0, from(0))) -> c12(A__SEL(mark(x0), a__from(0)), MARK(x0)) MARK(sel(x0, from(nil))) -> c12(A__SEL(mark(x0), a__from(nil)), MARK(x0)) MARK(sel(from(z0), from(x1))) -> c12(A__SEL(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(sel(first(z0, z1), from(x1))) -> c12(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), from(x1))) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(sel(s(z0), from(x1))) -> c12(A__SEL(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(sel(x0, from(x1))) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), from(x1))) -> c12(MARK(cons(z0, z1))) MARK(sel(0, from(x1))) -> c12(A__SEL(0, a__from(mark(x1)))) MARK(sel(x0, first(x1, from(z0)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(sel(x0, first(x1, first(z0, z1)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, first(x1, sel(z0, z1)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, first(x1, cons(z0, z1)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(sel(x0, first(x1, s(z0)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(sel(x0, first(x1, 0))) -> c12(A__SEL(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(sel(x0, first(x1, nil))) -> c12(A__SEL(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(sel(x0, first(from(z0), x2))) -> c12(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(sel(x0, first(first(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(sel(x0, first(sel(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(sel(x0, first(cons(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(sel(x0, first(s(z0), x2))) -> c12(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(sel(x0, first(0, x2))) -> c12(A__SEL(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(sel(x0, first(nil, x2))) -> c12(A__SEL(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(sel(from(z0), first(x1, x2))) -> c12(A__SEL(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(sel(first(z0, z1), first(x1, x2))) -> c12(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), first(x1, x2))) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(sel(s(z0), first(x1, x2))) -> c12(A__SEL(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(sel(x0, first(x1, x2))) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), first(x1, x2))) -> c12(MARK(cons(z0, z1))) MARK(sel(0, first(x1, x2))) -> c12(A__SEL(0, a__first(mark(x1), mark(x2)))) MARK(sel(x0, sel(x1, from(z0)))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(sel(x0, sel(x1, first(z0, z1)))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, sel(x1, sel(z0, z1)))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, sel(x1, cons(z0, z1)))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(sel(x0, sel(x1, s(z0)))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(sel(x0, sel(x1, 0))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(sel(x0, sel(x1, nil))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(sel(x0, sel(from(z0), x2))) -> c12(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(sel(x0, sel(first(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(sel(x0, sel(sel(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(sel(x0, sel(cons(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(sel(x0, sel(s(z0), x2))) -> c12(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(sel(x0, sel(0, x2))) -> c12(A__SEL(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(sel(x0, sel(nil, x2))) -> c12(A__SEL(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(sel(from(z0), sel(x1, x2))) -> c12(A__SEL(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(sel(first(z0, z1), sel(x1, x2))) -> c12(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), sel(x1, x2))) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(sel(s(z0), sel(x1, x2))) -> c12(A__SEL(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(sel(x0, sel(x1, x2))) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), sel(x1, x2))) -> c12(MARK(cons(z0, z1))) MARK(sel(0, sel(x1, x2))) -> c12(A__SEL(0, a__sel(mark(x1), mark(x2)))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__FIRST(s(z0), cons(z1, z2)) -> c3(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c5(MARK(z0)) MARK(from(z0)) -> c9(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c14(MARK(z0)) MARK(s(z0)) -> c15(MARK(z0)) A__SEL(s(x0), cons(x1, s(z0))) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c6(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c6(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c7(MARK(x2)) MARK(first(x0, s(z0))) -> c10(MARK(x0)) MARK(first(x0, 0)) -> c10(MARK(x0)) MARK(first(x0, nil)) -> c10(MARK(x0)) MARK(first(cons(z0, z1), x1)) -> c10(MARK(cons(z0, z1))) MARK(first(x0, s(z0))) -> c11(MARK(s(z0))) MARK(first(cons(z0, z1), x1)) -> c11(MARK(x1)) MARK(first(0, x1)) -> c11(MARK(x1)) MARK(first(nil, x1)) -> c11(MARK(x1)) MARK(sel(x0, cons(z0, z1))) -> c12(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c12(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(first(z0, z1), x1)) -> c12(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c12(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c12(MARK(x0)) MARK(sel(x0, 0)) -> c12(MARK(x0)) MARK(sel(x0, nil)) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c12(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c12(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c13(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, first(z0, z1))) -> c13(A__SEL(mark(x0), a__first(mark(z0), mark(z1))), MARK(first(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c13(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c13(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c13(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(first(z0, z1), x1)) -> c13(A__SEL(a__first(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c13(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c13(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c13(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c13(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c13(MARK(x1)) MARK(sel(nil, x1)) -> c13(MARK(x1)) A__SEL(s(x0), cons(x1, from(x2))) -> c6(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c6(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c6(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c6(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c6(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c6(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c6(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c6(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c6(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c6(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c6(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(0, x3))) -> c6(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c6(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c6(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c6(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c6(A__SEL(0, a__first(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, first(z0, z1)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c6(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)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c6(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c6(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c6(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c6(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c6(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c6(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c6(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c6(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c6(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))) -> c6(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c6(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c6(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c6(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c6(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(first(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c6(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))) -> c6(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c6(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c6(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(from(first(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c6(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c6(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c6(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c6(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c6(MARK(from(x0))) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(first(x0, from(z0)))) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, first(z0, z1)))) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(first(x0, sel(z0, z1)))) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(first(x0, cons(z0, z1)))) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(first(x0, s(z0)))) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(first(x0, 0))) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(first(x0, nil))) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(first(from(z0), x1))) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(first(z0, z1), x1))) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(first(sel(z0, z1), x1))) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(first(cons(z0, z1), x1))) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(first(s(z0), x1))) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(first(0, x1))) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(first(nil, x1))) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, 0)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, nil)) -> c6(MARK(first(x0, x1))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c6(MARK(first(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, first(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c6(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(first(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c6(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)) -> c6(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)) -> c6(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)) -> c6(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c6(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c6(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c6(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c6(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c6(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(s(first(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c6(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)) -> c6(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c6(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c6(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c6(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c6(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c6(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c7(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(first(z0, z1)))) -> c7(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c7(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)))) -> c7(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c7(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c7(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c7(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c7(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(first(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c7(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c7(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c7(MARK(from(x2))) A__SEL(s(x0), cons(x1, first(x2, from(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__from(mark(z0)))), MARK(first(x2, from(z0)))) A__SEL(s(x0), cons(x1, first(x2, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__first(mark(z0), mark(z1)))), MARK(first(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, sel(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(first(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, cons(z0, z1)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), cons(mark(z0), z1))), MARK(first(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, first(x2, s(z0)))) -> c7(A__SEL(mark(x0), a__first(mark(x2), s(mark(z0)))), MARK(first(x2, s(z0)))) A__SEL(s(x0), cons(x1, first(x2, 0))) -> c7(A__SEL(mark(x0), a__first(mark(x2), 0)), MARK(first(x2, 0))) A__SEL(s(x0), cons(x1, first(x2, nil))) -> c7(A__SEL(mark(x0), a__first(mark(x2), nil)), MARK(first(x2, nil))) A__SEL(s(x0), cons(x1, first(from(z0), x3))) -> c7(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x3))), MARK(first(from(z0), x3))) A__SEL(s(x0), cons(x1, first(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x3))), MARK(first(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(sel(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(first(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(cons(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x3))), MARK(first(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, first(s(z0), x3))) -> c7(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x3))), MARK(first(s(z0), x3))) A__SEL(s(x0), cons(x1, first(0, x3))) -> c7(A__SEL(mark(x0), a__first(0, mark(x3))), MARK(first(0, x3))) A__SEL(s(x0), cons(x1, first(nil, x3))) -> c7(A__SEL(mark(x0), a__first(nil, mark(x3))), MARK(first(nil, x3))) A__SEL(s(from(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, first(x2, x3))) -> c7(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(s(z0)), cons(x1, first(x2, x3))) -> c7(A__SEL(s(mark(z0)), a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(0), cons(x1, first(x2, x3))) -> c7(A__SEL(0, a__first(mark(x2), mark(x3))), MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(nil), cons(x1, first(x2, x3))) -> c7(MARK(first(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c7(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, first(z0, z1)))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), a__first(mark(z0), mark(z1)))), MARK(sel(x2, first(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c7(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)))) -> c7(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)))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c7(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c7(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x3))), MARK(sel(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c7(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, sel(x2, x3))) -> c7(A__SEL(a__first(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))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c7(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c7(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c7(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(first(z0, z1), x3))) -> c7(A__SEL(mark(x0), cons(a__first(mark(z0), mark(z1)), x3)), MARK(cons(first(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c7(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))) -> c7(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))) -> c7(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c7(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c7(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(first(z0, z1)), cons(x1, cons(x2, x3))) -> c7(A__SEL(a__first(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c7(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))) -> c7(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c7(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c7(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c7(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c7(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c7(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c7(MARK(x2)) A__SEL(s(first(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, sel(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, cons(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(first(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(first(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__first(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(first(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(sel(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(cons(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__first(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__first(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(first(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(first(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, first(z0, z1))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c7(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(first(z0, z1), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c7(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)) -> c7(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c7(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c7(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c7(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(first(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c7(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c7(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c7(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c7(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c7(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c7(MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(first(x0, from(from(z0)))) -> c10(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(first(x0, from(first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, from(cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, from(s(z0)))) -> c10(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(first(x0, from(0))) -> c10(A__FIRST(mark(x0), a__from(0)), MARK(x0)) MARK(first(x0, from(nil))) -> c10(A__FIRST(mark(x0), a__from(nil)), MARK(x0)) MARK(first(from(z0), from(x1))) -> c10(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(first(first(z0, z1), from(x1))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), from(x1))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(first(s(z0), from(x1))) -> c10(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(first(x0, from(x1))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), from(x1))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, first(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, first(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, first(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, first(x1, 0))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(first(x0, first(x1, nil))) -> c10(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(first(x0, first(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, first(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, first(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, first(0, x2))) -> c10(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(first(x0, first(nil, x2))) -> c10(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), first(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), first(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), first(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, first(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), first(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, sel(x1, from(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, first(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(first(x0, sel(x1, s(z0)))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(first(x0, sel(x1, 0))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(first(x0, sel(x1, nil))) -> c10(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(first(x0, sel(from(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(first(x0, sel(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(first(x0, sel(s(z0), x2))) -> c10(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(first(x0, sel(0, x2))) -> c10(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(first(x0, sel(nil, x2))) -> c10(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(first(from(z0), sel(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(first(first(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(first(s(z0), sel(x1, x2))) -> c10(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(first(x0, sel(x1, x2))) -> c10(MARK(x0)) MARK(first(cons(z0, z1), sel(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(x0, cons(from(z0), x2))) -> c10(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(first(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(sel(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(x0)) MARK(first(x0, cons(cons(z0, z1), x2))) -> c10(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(x0)) MARK(first(x0, cons(s(z0), x2))) -> c10(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(x0)) MARK(first(x0, cons(0, x2))) -> c10(A__FIRST(mark(x0), cons(0, x2)), MARK(x0)) MARK(first(x0, cons(nil, x2))) -> c10(A__FIRST(mark(x0), cons(nil, x2)), MARK(x0)) MARK(first(from(z0), cons(x1, x2))) -> c10(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(from(z0))) MARK(first(first(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(first(z0, z1))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c10(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(sel(z0, z1))) MARK(first(s(z0), cons(x1, x2))) -> c10(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(s(z0))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c10(MARK(cons(z0, z1))) MARK(first(from(from(z0)), x1)) -> c10(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(from(from(z0)))) MARK(first(from(first(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(from(first(z0, z1)))) MARK(first(from(sel(z0, z1)), x1)) -> c10(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(from(sel(z0, z1)))) MARK(first(from(cons(z0, z1)), x1)) -> c10(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(from(cons(z0, z1)))) MARK(first(from(s(z0)), x1)) -> c10(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(from(s(z0)))) MARK(first(from(0), x1)) -> c10(A__FIRST(a__from(0), mark(x1)), MARK(from(0))) MARK(first(from(nil), x1)) -> c10(A__FIRST(a__from(nil), mark(x1)), MARK(from(nil))) MARK(first(from(x0), x1)) -> c10(MARK(from(x0))) MARK(first(from(x0), s(z0))) -> c10(MARK(from(x0))) MARK(first(from(x0), 0)) -> c10(MARK(from(x0))) MARK(first(from(x0), nil)) -> c10(MARK(from(x0))) MARK(first(first(x0, from(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(first(x0, from(z0)))) MARK(first(first(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, first(z0, z1)))) MARK(first(first(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(first(x0, sel(z0, z1)))) MARK(first(first(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(first(x0, cons(z0, z1)))) MARK(first(first(x0, s(z0)), x2)) -> c10(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(first(x0, s(z0)))) MARK(first(first(x0, 0), x2)) -> c10(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(first(x0, 0))) MARK(first(first(x0, nil), x2)) -> c10(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(first(x0, nil))) MARK(first(first(from(z0), x1), x2)) -> c10(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(first(from(z0), x1))) MARK(first(first(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(first(z0, z1), x1))) MARK(first(first(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(first(sel(z0, z1), x1))) MARK(first(first(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(first(cons(z0, z1), x1))) MARK(first(first(s(z0), x1), x2)) -> c10(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(first(s(z0), x1))) MARK(first(first(0, x1), x2)) -> c10(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(first(0, x1))) MARK(first(first(nil, x1), x2)) -> c10(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(first(nil, x1))) MARK(first(first(x0, x1), s(z0))) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), 0)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), nil)) -> c10(MARK(first(x0, x1))) MARK(first(first(x0, x1), x2)) -> c10(MARK(first(x0, x1))) MARK(first(sel(x0, from(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(sel(x0, from(z0)))) MARK(first(sel(x0, first(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, first(z0, z1)))) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(sel(x0, sel(z0, z1)))) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c10(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(sel(x0, cons(z0, z1)))) MARK(first(sel(x0, s(z0)), x2)) -> c10(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(sel(x0, s(z0)))) MARK(first(sel(x0, 0), x2)) -> c10(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(sel(x0, 0))) MARK(first(sel(x0, nil), x2)) -> c10(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(sel(x0, nil))) MARK(first(sel(from(z0), x1), x2)) -> c10(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(sel(from(z0), x1))) MARK(first(sel(first(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(first(z0, z1), x1))) MARK(first(sel(sel(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(sel(sel(z0, z1), x1))) MARK(first(sel(cons(z0, z1), x1), x2)) -> c10(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(sel(cons(z0, z1), x1))) MARK(first(sel(s(z0), x1), x2)) -> c10(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(sel(s(z0), x1))) MARK(first(sel(0, x1), x2)) -> c10(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(sel(0, x1))) MARK(first(sel(nil, x1), x2)) -> c10(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(sel(nil, x1))) MARK(first(sel(x0, x1), s(z0))) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), 0)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), nil)) -> c10(MARK(sel(x0, x1))) MARK(first(sel(x0, x1), x2)) -> c10(MARK(sel(x0, x1))) MARK(first(s(from(z0)), x1)) -> c10(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(s(from(z0)))) MARK(first(s(first(z0, z1)), x1)) -> c10(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(s(first(z0, z1)))) MARK(first(s(sel(z0, z1)), x1)) -> c10(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(s(sel(z0, z1)))) MARK(first(s(cons(z0, z1)), x1)) -> c10(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(s(cons(z0, z1)))) MARK(first(s(s(z0)), x1)) -> c10(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(s(s(z0)))) MARK(first(s(0), x1)) -> c10(A__FIRST(s(0), mark(x1)), MARK(s(0))) MARK(first(s(nil), x1)) -> c10(A__FIRST(s(nil), mark(x1)), MARK(s(nil))) MARK(first(s(x0), x1)) -> c10(MARK(s(x0))) MARK(first(s(x0), s(z0))) -> c10(MARK(s(x0))) MARK(first(s(x0), 0)) -> c10(MARK(s(x0))) MARK(first(s(x0), nil)) -> c10(MARK(s(x0))) MARK(first(x0, from(x1))) -> c11(A__FIRST(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) MARK(first(x0, from(from(z0)))) -> c11(A__FIRST(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(first(x0, from(first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(from(first(z0, z1)))) MARK(first(x0, from(sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(first(x0, from(cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(first(x0, from(s(z0)))) -> c11(A__FIRST(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(first(x0, from(0))) -> c11(A__FIRST(mark(x0), a__from(0)), MARK(from(0))) MARK(first(x0, from(nil))) -> c11(A__FIRST(mark(x0), a__from(nil)), MARK(from(nil))) MARK(first(from(z0), from(x1))) -> c11(A__FIRST(a__from(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(first(z0, z1), from(x1))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(sel(z0, z1), from(x1))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(from(x1))) MARK(first(s(z0), from(x1))) -> c11(A__FIRST(s(mark(z0)), a__from(mark(x1))), MARK(from(x1))) MARK(first(x0, from(x1))) -> c11(MARK(from(x1))) MARK(first(cons(z0, z1), from(x1))) -> c11(MARK(from(x1))) MARK(first(0, from(x1))) -> c11(MARK(from(x1))) MARK(first(nil, from(x1))) -> c11(MARK(from(x1))) MARK(first(x0, first(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(first(x1, from(z0)))) MARK(first(x0, first(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(first(x1, first(z0, z1)))) MARK(first(x0, first(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(first(x1, sel(z0, z1)))) MARK(first(x0, first(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(first(x1, cons(z0, z1)))) MARK(first(x0, first(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(first(x1, s(z0)))) MARK(first(x0, first(x1, 0))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), 0)), MARK(first(x1, 0))) MARK(first(x0, first(x1, nil))) -> c11(A__FIRST(mark(x0), a__first(mark(x1), nil)), MARK(first(x1, nil))) MARK(first(x0, first(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(first(from(z0), x2))) MARK(first(x0, first(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(first(first(z0, z1), x2))) MARK(first(x0, first(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(first(sel(z0, z1), x2))) MARK(first(x0, first(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(first(cons(z0, z1), x2))) MARK(first(x0, first(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(first(s(z0), x2))) MARK(first(x0, first(0, x2))) -> c11(A__FIRST(mark(x0), a__first(0, mark(x2))), MARK(first(0, x2))) MARK(first(x0, first(nil, x2))) -> c11(A__FIRST(mark(x0), a__first(nil, mark(x2))), MARK(first(nil, x2))) MARK(first(from(z0), first(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(first(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(sel(z0, z1), first(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(s(z0), first(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(first(x1, x2))) MARK(first(x0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(cons(z0, z1), first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(0, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(nil, first(x1, x2))) -> c11(MARK(first(x1, x2))) MARK(first(x0, sel(x1, from(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) MARK(first(x0, sel(x1, first(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(sel(x1, first(z0, z1)))) MARK(first(x0, sel(x1, sel(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) MARK(first(x0, sel(x1, cons(z0, z1)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) MARK(first(x0, sel(x1, s(z0)))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) MARK(first(x0, sel(x1, 0))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), 0)), MARK(sel(x1, 0))) MARK(first(x0, sel(x1, nil))) -> c11(A__FIRST(mark(x0), a__sel(mark(x1), nil)), MARK(sel(x1, nil))) MARK(first(x0, sel(from(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) MARK(first(x0, sel(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(sel(first(z0, z1), x2))) MARK(first(x0, sel(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) MARK(first(x0, sel(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) MARK(first(x0, sel(s(z0), x2))) -> c11(A__FIRST(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) MARK(first(x0, sel(0, x2))) -> c11(A__FIRST(mark(x0), a__sel(0, mark(x2))), MARK(sel(0, x2))) MARK(first(x0, sel(nil, x2))) -> c11(A__FIRST(mark(x0), a__sel(nil, mark(x2))), MARK(sel(nil, x2))) MARK(first(from(z0), sel(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(first(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(sel(z0, z1), sel(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(s(z0), sel(x1, x2))) -> c11(A__FIRST(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) MARK(first(x0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(cons(z0, z1), sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(0, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(nil, sel(x1, x2))) -> c11(MARK(sel(x1, x2))) MARK(first(x0, cons(from(z0), x2))) -> c11(A__FIRST(mark(x0), cons(a__from(mark(z0)), x2)), MARK(cons(from(z0), x2))) MARK(first(x0, cons(first(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__first(mark(z0), mark(z1)), x2)), MARK(cons(first(z0, z1), x2))) MARK(first(x0, cons(sel(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(a__sel(mark(z0), mark(z1)), x2)), MARK(cons(sel(z0, z1), x2))) MARK(first(x0, cons(cons(z0, z1), x2))) -> c11(A__FIRST(mark(x0), cons(cons(mark(z0), z1), x2)), MARK(cons(cons(z0, z1), x2))) MARK(first(x0, cons(s(z0), x2))) -> c11(A__FIRST(mark(x0), cons(s(mark(z0)), x2)), MARK(cons(s(z0), x2))) MARK(first(x0, cons(0, x2))) -> c11(A__FIRST(mark(x0), cons(0, x2)), MARK(cons(0, x2))) MARK(first(x0, cons(nil, x2))) -> c11(A__FIRST(mark(x0), cons(nil, x2)), MARK(cons(nil, x2))) MARK(first(from(z0), cons(x1, x2))) -> c11(A__FIRST(a__from(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(first(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__first(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(sel(z0, z1), cons(x1, x2))) -> c11(A__FIRST(a__sel(mark(z0), mark(z1)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(s(z0), cons(x1, x2))) -> c11(A__FIRST(s(mark(z0)), cons(mark(x1), x2)), MARK(cons(x1, x2))) MARK(first(x0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(cons(z0, z1), cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(0, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(nil, cons(x1, x2))) -> c11(MARK(cons(x1, x2))) MARK(first(from(from(z0)), x1)) -> c11(A__FIRST(a__from(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(first(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(sel(z0, z1)), x1)) -> c11(A__FIRST(a__from(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(from(cons(z0, z1)), x1)) -> c11(A__FIRST(a__from(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(from(s(z0)), x1)) -> c11(A__FIRST(a__from(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(from(0), x1)) -> c11(A__FIRST(a__from(0), mark(x1)), MARK(x1)) MARK(first(from(nil), x1)) -> c11(A__FIRST(a__from(nil), mark(x1)), MARK(x1)) MARK(first(from(x0), s(z0))) -> c11(MARK(s(z0))) MARK(first(from(x0), x1)) -> c11(MARK(x1)) MARK(first(first(x0, from(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(first(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__first(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(first(x0, s(z0)), x2)) -> c11(A__FIRST(a__first(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(first(x0, 0), x2)) -> c11(A__FIRST(a__first(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(first(x0, nil), x2)) -> c11(A__FIRST(a__first(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(first(from(z0), x1), x2)) -> c11(A__FIRST(a__first(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__first(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(s(z0), x1), x2)) -> c11(A__FIRST(a__first(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(0, x1), x2)) -> c11(A__FIRST(a__first(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(nil, x1), x2)) -> c11(A__FIRST(a__first(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(first(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(first(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(sel(x0, from(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__from(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, first(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__first(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, sel(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) MARK(first(sel(x0, cons(z0, z1)), x2)) -> c11(A__FIRST(a__sel(mark(x0), cons(mark(z0), z1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, s(z0)), x2)) -> c11(A__FIRST(a__sel(mark(x0), s(mark(z0))), mark(x2)), MARK(x2)) MARK(first(sel(x0, 0), x2)) -> c11(A__FIRST(a__sel(mark(x0), 0), mark(x2)), MARK(x2)) MARK(first(sel(x0, nil), x2)) -> c11(A__FIRST(a__sel(mark(x0), nil), mark(x2)), MARK(x2)) MARK(first(sel(from(z0), x1), x2)) -> c11(A__FIRST(a__sel(a__from(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(first(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__first(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(sel(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(cons(z0, z1), x1), x2)) -> c11(A__FIRST(a__sel(cons(mark(z0), z1), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(s(z0), x1), x2)) -> c11(A__FIRST(a__sel(s(mark(z0)), mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(0, x1), x2)) -> c11(A__FIRST(a__sel(0, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(nil, x1), x2)) -> c11(A__FIRST(a__sel(nil, mark(x1)), mark(x2)), MARK(x2)) MARK(first(sel(x0, x1), s(z0))) -> c11(MARK(s(z0))) MARK(first(sel(x0, x1), x2)) -> c11(MARK(x2)) MARK(first(s(from(z0)), x1)) -> c11(A__FIRST(s(a__from(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(first(z0, z1)), x1)) -> c11(A__FIRST(s(a__first(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(sel(z0, z1)), x1)) -> c11(A__FIRST(s(a__sel(mark(z0), mark(z1))), mark(x1)), MARK(x1)) MARK(first(s(cons(z0, z1)), x1)) -> c11(A__FIRST(s(cons(mark(z0), z1)), mark(x1)), MARK(x1)) MARK(first(s(s(z0)), x1)) -> c11(A__FIRST(s(s(mark(z0))), mark(x1)), MARK(x1)) MARK(first(s(0), x1)) -> c11(A__FIRST(s(0), mark(x1)), MARK(x1)) MARK(first(s(nil), x1)) -> c11(A__FIRST(s(nil), mark(x1)), MARK(x1)) MARK(first(s(x0), s(z0))) -> c11(MARK(s(z0))) MARK(sel(x0, from(x1))) -> c12(A__SEL(mark(x0), cons(mark(mark(x1)), from(s(mark(x1))))), MARK(x0)) MARK(sel(x0, from(from(z0)))) -> c12(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) MARK(sel(x0, from(first(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, from(sel(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, from(cons(z0, z1)))) -> c12(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) MARK(sel(x0, from(s(z0)))) -> c12(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) MARK(sel(x0, from(0))) -> c12(A__SEL(mark(x0), a__from(0)), MARK(x0)) MARK(sel(x0, from(nil))) -> c12(A__SEL(mark(x0), a__from(nil)), MARK(x0)) MARK(sel(from(z0), from(x1))) -> c12(A__SEL(a__from(mark(z0)), a__from(mark(x1))), MARK(from(z0))) MARK(sel(first(z0, z1), from(x1))) -> c12(A__SEL(a__first(mark(z0), mark(z1)), a__from(mark(x1))), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), from(x1))) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x1))), MARK(sel(z0, z1))) MARK(sel(s(z0), from(x1))) -> c12(A__SEL(s(mark(z0)), a__from(mark(x1))), MARK(s(z0))) MARK(sel(x0, from(x1))) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), from(x1))) -> c12(MARK(cons(z0, z1))) MARK(sel(0, from(x1))) -> c12(A__SEL(0, a__from(mark(x1)))) MARK(sel(x0, first(x1, from(z0)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(sel(x0, first(x1, first(z0, z1)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, first(x1, sel(z0, z1)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, first(x1, cons(z0, z1)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(sel(x0, first(x1, s(z0)))) -> c12(A__SEL(mark(x0), a__first(mark(x1), s(mark(z0)))), MARK(x0)) MARK(sel(x0, first(x1, 0))) -> c12(A__SEL(mark(x0), a__first(mark(x1), 0)), MARK(x0)) MARK(sel(x0, first(x1, nil))) -> c12(A__SEL(mark(x0), a__first(mark(x1), nil)), MARK(x0)) MARK(sel(x0, first(from(z0), x2))) -> c12(A__SEL(mark(x0), a__first(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(sel(x0, first(first(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__first(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(sel(x0, first(sel(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__first(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(sel(x0, first(cons(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__first(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(sel(x0, first(s(z0), x2))) -> c12(A__SEL(mark(x0), a__first(s(mark(z0)), mark(x2))), MARK(x0)) MARK(sel(x0, first(0, x2))) -> c12(A__SEL(mark(x0), a__first(0, mark(x2))), MARK(x0)) MARK(sel(x0, first(nil, x2))) -> c12(A__SEL(mark(x0), a__first(nil, mark(x2))), MARK(x0)) MARK(sel(from(z0), first(x1, x2))) -> c12(A__SEL(a__from(mark(z0)), a__first(mark(x1), mark(x2))), MARK(from(z0))) MARK(sel(first(z0, z1), first(x1, x2))) -> c12(A__SEL(a__first(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), first(x1, x2))) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), a__first(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(sel(s(z0), first(x1, x2))) -> c12(A__SEL(s(mark(z0)), a__first(mark(x1), mark(x2))), MARK(s(z0))) MARK(sel(x0, first(x1, x2))) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), first(x1, x2))) -> c12(MARK(cons(z0, z1))) MARK(sel(0, first(x1, x2))) -> c12(A__SEL(0, a__first(mark(x1), mark(x2)))) MARK(sel(x0, sel(x1, from(z0)))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), a__from(mark(z0)))), MARK(x0)) MARK(sel(x0, sel(x1, first(z0, z1)))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), a__first(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, sel(x1, sel(z0, z1)))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(x0)) MARK(sel(x0, sel(x1, cons(z0, z1)))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), cons(mark(z0), z1))), MARK(x0)) MARK(sel(x0, sel(x1, s(z0)))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), s(mark(z0)))), MARK(x0)) MARK(sel(x0, sel(x1, 0))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), 0)), MARK(x0)) MARK(sel(x0, sel(x1, nil))) -> c12(A__SEL(mark(x0), a__sel(mark(x1), nil)), MARK(x0)) MARK(sel(x0, sel(from(z0), x2))) -> c12(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x2))), MARK(x0)) MARK(sel(x0, sel(first(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__sel(a__first(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(sel(x0, sel(sel(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(x0)) MARK(sel(x0, sel(cons(z0, z1), x2))) -> c12(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x2))), MARK(x0)) MARK(sel(x0, sel(s(z0), x2))) -> c12(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x2))), MARK(x0)) MARK(sel(x0, sel(0, x2))) -> c12(A__SEL(mark(x0), a__sel(0, mark(x2))), MARK(x0)) MARK(sel(x0, sel(nil, x2))) -> c12(A__SEL(mark(x0), a__sel(nil, mark(x2))), MARK(x0)) MARK(sel(from(z0), sel(x1, x2))) -> c12(A__SEL(a__from(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(from(z0))) MARK(sel(first(z0, z1), sel(x1, x2))) -> c12(A__SEL(a__first(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(first(z0, z1))) MARK(sel(sel(z0, z1), sel(x1, x2))) -> c12(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x1), mark(x2))), MARK(sel(z0, z1))) MARK(sel(s(z0), sel(x1, x2))) -> c12(A__SEL(s(mark(z0)), a__sel(mark(x1), mark(x2))), MARK(s(z0))) MARK(sel(x0, sel(x1, x2))) -> c12(MARK(x0)) MARK(sel(cons(z0, z1), sel(x1, x2))) -> c12(MARK(cons(z0, z1))) MARK(sel(0, sel(x1, x2))) -> c12(A__SEL(0, a__sel(mark(x1), mark(x2)))) K tuples:none Defined Rule Symbols: a__from_1, a__first_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__FIRST_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c3_1, c5_1, c9_2, c14_1, c15_1, c6_1, c7_1, c10_1, c11_1, c12_2, c12_1, c13_2, c13_1, c6_2, c7_2, c10_2, c11_2